[SQL]SQL Server数据表的基础知识与增查删改

[SQL]SQL Server数据表的基础知识与增查删改
SQL Server数据表的基础知识与增查删改
由张晨辉(学生) 于19天 前发表 | 阅读94次
 一、常用数据类型
      
       1、整型:bigint、int、smallint、tinyint
       2、小数:decimal、numeric
       3、近似数字数据:float、real
       4、货币数据:money、smallmoney
       5、日期和时间:datetime、smalldatetime
       6、字符数据:char、varchar、text
       7、Unicode字符数据:nchar、nvarchar、ntext
       8、二进制数据:binary、varbinary、ntext
       9、其他:timestamp等
       10、自定义用户类型的创建与删除:sp_addtype {type_name},[base_type] [,[‘NULL’|‘NOT NULL’]] [,’拥有者’]
            Sp_droptype type_name
   二、选择数据类型的指导原则
       1、若列的值的长度相差很大,使用变长数据类型
       2、谨慎使用tinyint数据类型
       3、对于小数数据来说,多使用decimal数据类型
       4、若行的存储量超过8000字节,使用text或者image
       5、若不大于8 000字节,可使用char、varchar或者binary数据类型
       6、货币数据,使用 money 数据类型
       7、不要使用类型为 float 或者 real 的列作为主键
   三、临时表
       1、--创建全局临时表
          CREATE TABLE ##GlobalTable
          (
           cola INT 
          )
       2、--创建局部临时表
          CREATE TABLE #LocationTable
          (
           cola INT
          )

   四、表
       1、创建表
         create table sales
         (
           order_no int not null,
           order_date datetime not null,
           ship_date datetime not null
         )
       2、修改表
         exec sp_rename sales,ssaless
       3、删除表
         drop table sales
       4、创建计算列的表
         CREATE TABLE Sells
          (
            price money,
            number int,
            amount as price*number
          ) 
       5、创建函数列的表
         CREATE TABLE TestTable
          (
            indate as getdate(),
            id int,
            usename AS USER_NAME() 
          )
       6、修改表employee
         ALTER TABLE employee
         ADD  telephone int null,  --添加列:电话号码 telephone_no,添加列:字符列email为char
  email char(29) null

         ALTER TABLE employee  --修改列类型:email为varchar
         ALTER COLUMN email varchar(20) null

         ALTER TABLE employee   --修改列空为非空列
         ALTER COLUMN email varchar(20) not null

         Exec sp_rename ‘架构名.表名.旧字段名 ‘,新字段名,’column’  --修改字段名

         ALTER TABLE employee  --删除列
         DROP COLUMN email 

    五、约束:约束是一种限制。在列或表的层次设置约束,确保数据符合某种数据完整性规则。
       1、主键约束
         (1)在创建表时加主键约束
             create table customers
              (
                CustomerNo int identity not null primary key,
                CustomerName varchar(30)  not null
              )
         (2)在现有表中添加主键
             alter table customers
             add constraint PK_CustomerNo
             Primary key (CustomerNo)
       2、外键约束
         (1)create table orders
              (
               OrderID int identity not null primary key,
               CustomerNo int not null  Foreign key references CUSTOMERS(customerno)
              )
         (2)在已存在的表中添加外键
              alter table orders
              add constraint FK_EmployeeCreatesOrder
              Foreign key (customerno) references customers(customerno)
       3、唯一约束:列上有一个唯一的值。
         (1)创建表时创建唯一约束
              create table shippers
              (
               shipperid int identity not null
               primary key ,
               phoneno varchar(14) not null unique
              )
         (2)在已存在的表中创建唯一约束
              alter table shippers
              add constraint AK_ShippersPhoneNo
              Unique(phoneno)
       4、Check约束:Check约束比较好的方面是不限制于一个特定的列。Check约束使用与where子句一样的规则定义。
         (1)添加Check约束
              alter table customers
              Add constraint cn_customerdateinsystem
              Check
             (DateInSystem<=GetDate())
         (2)删除Check约束
              alter table testtable
              drop constraint cn_customerdateinsystem
       5、Default
         (1)创建默认值
              create table shippers
              (
               shipperid int identity not null primary key,
               dateinsystem smalldatetime not null default GetDate()
              )
         (2)在已存在的表上加默认值
              Alter table customers
              Add constraint cn_customerdefaultdateinsystem
              Default getdate() for dateinsystem
[SQL]SQL Server数据表的基础知识与增查删改

[SQL]SQL Server数据表的基础知识与增查删改,布布扣,bubuko.com

[SQL]SQL Server数据表的基础知识与增查删改

上一篇:无限纠结——Zedboard上跑ubuntu详解


下一篇:WPF-控件SAP焦点