SQL Server 约束
-- 设置主键自增长
--->关键字: identity(1,1)从1开始步长为1
图形操作:
程序操作:
-- 主键设置:使用T-SQL定义主键
-- 定义非聚集主键约束:primary key nonclustered
use testdemo001;
go
create table primarykey_test(
LogID int identity(1,1) NOT NULL, -- int identity(1,1)设置为自增长,从1开始,步长为1
sysTime datetime NOT NULL
constraint PK_syslog primary key nonclustered(
LogID asc
)
)
go
-- 外键约束
图形操作:
注:还没搞定
-- 程序操作(使用T-SQL定义外键约束)
use testdemo001;
go
alter table student
with check add constraint [FK_student_depart] --外键约束
foreign key([department_ID]) -- student表中的外键department_ID
references depart([department_ID]) -- 关联到depart表中的主键department_ID
go
-- default约束
图像化操作:
程序操作:
use testdemo001;
go
alter table depart
add constraint DF_name_test default 'unknown' for department_name
Go --设置默认值
-- unique约束
图形操作:
点击添加
程序操作:
use testdemo001;
go
alter table depart
add constraint U_department_name unique(department_name)
Go
--check 约束
check约束的使用限制:
1>列可以包含多个check约束,约束条件可以包含多个and和or的组合,列的多个check约束按创建顺序进行验证
2>不能在text,ntext或image数据类型的列上定义check约束.
图形操作:
点击添加,选择表达式
确定,保存
程序操作:
use testdemo001;
go
alter table depart
add conctraint CK_class
check (class>4)
go