数据库约束

1、主键约束:保证实体的唯一性 (什么样的字段可以选作主键,必须是唯一性的字段)
①SSMS
②SQL
primary key 主键
identity 自增 identity(3,2) 从3开始每次增加2 第一个参数从几开始,第二个参数每次增加几个
要想使用identity必须是int型
2、非空约束:保证字段不能为空
①SSMS 把勾去掉则就是非空的
②SQL
not null
3、检查约束 check(条件) and or not >= <= > < = <>(不等于)
between ? and ? (包含边界)
4、默认约束 default
5、唯一约束 unique
6、外键约束
foreign key references 表(列名)

create table Student
(
StuID int primary key identity,–主键自增
StuName varchar(20) not null,
StuAge int check(StuAge between 0 and 120),
StuSex char(2) check (StuSex=’男’ or StuSex=’女’),
StuAddr varchar(50) default (‘北京’),
StuTel varchar(14) unique
)

create table Score
(
StuId int foreign key references Student(StuID),
StuFen float
)

7、规则(Rule) 对存储的数据表的列或自定义的数据类型中的值得约束
①创建规则
Create Rule 规则名 AS @变量名表达式
CREATE RULE numCheck –rule 规则 numCheck 自己定义的规则名
AS @num>5 –使用@定义变量 num 自己定义的变量名 >5条件表达式

②绑定规则

EXEC sys.sp_bindrule ‘规则名’,’表名.列名’
EXEC sys.sp_bindrule ‘numCheck’,’Test.TestNum’ –绑定名为numCheck的规则到Test表的TestNum列

③取消绑定

EXEC sys.sp_unbindrule ‘表名.列名’ –取消Test表的TestNum列的规则

④删除规则

DROP RULE numCheck –Drop Rule 规则名 正在使用的规则不能被删除

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值