数据库SQL Server2012笔记(五)——维护数据的完整性——约束

1、概念

1)约束用于确保数据库数据满足特定的商业规则。
2)在sql server中,约束包括:not null,unique,primary key,foreigh key,check五种。

2、not  null(非空)
  • 如果在列上定义了not null,那么当插入数据时,必须为列提供数据。

3、unique(唯一)
  • 当定义了唯一约束后,该列值是不能重复的,可以为null,但最多只能有一个是null。

4、primary  key
  • 不能重复且不能为null。
  • 一张表最多只能有一个主键,但是可以有多个unique约束。
  • 表可以有复合主键
    • 多个咧构成一个主键
    • 放在最后:primary  key(字段1,字段2)
    • 同时相同,才为重复。
5、行级定义和表级定义
     create  table  test
     (Id  int,
      name  nvarchar(30),
      age  int  not  null,——>行级定义
      primary  key(Id,name)——>表级定义)

6、foreign key:定义主表(被引用的表)和从表(引用外键的表)之间的关系。
1)外键约束要定义在从表。
2)主表必须有主键约束或unique约束。
3)外键列数据必须在主表的主键列存在或为null。

7、check:用于强制行数据必须满足的条件。

8、default:若不赋值,则给默认值
     create  table  mes  (Id  int  primary  key   identiry(1,1), mesDate  datatime  default  getdate())
插入数据时,若不给出时间,则赋本地时间。
原文地址:https://www.cnblogs.com/huhewei/p/6749585.html