SQL 约束-保证数据完整性
1.MS SQLServer的每个数据库:包含 (1个主数据文件(.mdf)必须。1个事务日志文件(.ldf)必须。)
可以包含(任意多个次要数据文件(.ndf),多个事务日志文件)
2.主键约束:Primary key:主键就是数据行的唯一标识。不会重复的列才能当主键
1)业务主键:使用有业务意义的字段做主键(身份证号,银行卡号)
2)逻辑主键:没有任何业务意义的字段做主键
3)组合主键:选择多列同时作为一个主键→组合主键(复合主键).(一般不建议采用)
alter table employees add constraint PK_Employees primary key(EmpId)
3.非空约束:数据不能为空
alter table employees alter column EmpEmail nvarchar(250) not null
4.外键约束:Foreign Key:所谓外键就是在A表中引用B表中的主键,那么此时A表叫外键表,B表叫主键表,两表之间联系通过主键和外键联系
优点:减少数据冗余,保证数据库的正确性
缺点:查询麻烦
alter table employees add constraint FK_Employees_DepId foreign key (DepId) references Department(DepId)
5.唯一约束:唯一,允许为空,但只能出现一次
alter table employees add constraint UQ_Employees_EmpName unique(EmpName)
6.默认约束:为数据添加一个默认值
alter table employees add constraint DF_Employees_EmpGender default('女')for EmpGender
7.检查约束:范围 以及 格式限制
alter table employees add constraint CK_Employees_EmpAge check(empage>0 and empage<100)