SQL Server 数据表代码创建约束

Posted by

约束

建立:主外键,约束。(删除主表的时候,同时删除子表;更新主表的时候更新子表)

非空约束 –NN,ont null constraint

1.建表时定义主键

  Create table 表名

   (

        Sno int identity(1,1),

        Sname nvarchar(20),

        –设置主键

        Primary key (Sno)

   )

必须填写数据不能为空

2.添加主外键

添加主键

alter table 表名

add constraint PK_表名_Sno

primary key(id)

参照完整性1.建表时定义外键

create table 表名

  (

      sno int identity(1,1) primary key,

      cno int not null,

      foreign key(cno) References

      表名2(Cno)

      on Delete cascade     –级联删除

      on update cascade    –级联更新

      — on delete on action 
删除管制

  )

添加外键

   alter table 表名

   add constraint FK_表名_表名2

   Foreign key(cid) references 表名2(cid)

用户定义完整性1.非空约束

   alter table 表名

   alter column name varchar(20) not null

–指定表 Student
添加名为NN_Student_sClassId非空约束(指定列名sClassId),括号输入表达式

3.唯一约束

   alter table 表名

   add constraint UQ_表名_列名 unique(列)

alter table Student add constraint NN_Student_sClassId check(sClassId
is not null)

4.检查约束

   alter table 表名

   add constraint CK_表名_列名 check(age>5)

 

5.默认约束

   alter table 表名

   add constraint DF_表名_列名 default(‘男’)

   for gender

主键约束 –PK,primary key
constraint

6.删除约束 

  alter table 表名 drop constraint DF_表名_列

 

唯一且不为空

–指定表 Student 添加名为PK_Student_sId主键约束(指定列名sId)

alter table Student add constraint PK_Student_sId primary key(sId)

 

唯一约束 –UQ,unique constraint

唯一,允许为空,但是同样的数据只能出现一次

–指定表 Student 添加名为UQ_Student_sName唯一约束(指定列名sName)

alter table Student add constraint UQ_Student_sName unique(sName)

    

默认约束 –DF,default
constraint

设置默认值

–指定表 Student
添加名为DF_Student_sName默认约束(指定列名sBirthday),获取当前日期

alter table Student add constraint DF_Student_sName default(getdate())
for sBirthday

 

–指定表 Student
添加名为DF_Student_sName默认约束(指定列名sBirthday),指定日期  

alter table Student add constraint DF_Student_sName
default(‘1995-12-12’) for sBirthday  

–指定表 Student
添加名为DF_Student_sName默认约束(指定列名sSex),指定性别

alter table Student add constraint DF_Student_sSex default(‘男’) for
sSex     

 

相关文章

Leave a Reply

电子邮件地址不会被公开。 必填项已用*标注