为什么叫高级基础 我个人觉得 这里算是基础的一部分 必须会的 高级我觉得面试从中问出各种花来 哈哈哈 但是只要能阐述 你怎么设置就可以

主键约束

作用就是 这一列里存在的是唯一一个可以表示实体的数据  不会出现一样的 第二条

当然 可以设置多个主键来 组合数据的唯一性

右击表 选择 设计

Sqlserver 高级基础 约束整理_外键约束

选择设置主键 并不允许为空

Sqlserver 高级基础 约束整理_主键_02

设置自增主键 会根据条数 自动增加ID

Sqlserver 高级基础 约束整理_Sqlserver_03

唯一建约束

例如 身份证 全中国都是一个人一个身份证 但是做为主键  太长了~  这里就需要增加一个唯一约束

选择 索引/键 

Sqlserver 高级基础 约束整理_数据_04

点击新增 取一个名字 有命名规范 不用和我一样 我只是做演示

Sqlserver 高级基础 约束整理_主键_05

选择 类型 唯一   选择下面 列 找到 IDcard这一样

Sqlserver 高级基础 约束整理_外键约束_06

Sqlserver 高级基础 约束整理_主键_07

这时 左侧就Key会多一个唯一约束

Sqlserver 高级基础 约束整理_Sqlserver_08

check 约束

check 约束来规范数据的内容 格式 

比如 身份证号必须大于11位 性别只能有男女

设置

Sqlserver 高级基础 约束整理_约束_09

还是点增加 命名  选择表达式

Sqlserver 高级基础 约束整理_数据_10

填写 约束  大于11位

Sqlserver 高级基础 约束整理_数据_11

看一下效果 

Sqlserver 高级基础 约束整理_外键约束_12

男女的话 写上 Sex in('男','女')

这时左侧 会多一个 约束

Sqlserver 高级基础 约束整理_Sqlserver_13

默认约束

默认值 如果不填 会自动默认一个值

这里列子是时间

Sqlserver 高级基础 约束整理_主键_14

效果 时间可以百度一下 怎么做成自己想要的格式

Sqlserver 高级基础 约束整理_主键_15

设置完以后 

Sqlserver 高级基础 约束整理_数据_16

主外键约束

​​ Sqlserver 主外键约束​​ 直达~

比较重要 东西也比较多 我会单独拿出来一篇说

还有 为什么我每次设置完后会 在左侧截个图 因为这也很重要

Sqlserver 高级基础 约束整理_数据_16

如果 要看代码是怎么设置的 右击你想看的约束或者是键 里面就是用代码怎么创建的语句

(其实 这些东西 你背用代码也可以 会设置也可以 虽然我现在不太能理解 为什么有的时候会被问到 这些怎么用代码创建约束 的面试官 都处于什么目的  毕竟 做饭的时候咱们都使用燃气 没听说过 谁还用转木取火 因为技术太多了 可能我不太愿意在这方面浪费时间 现在这个阶段 中国谁可能会去写一个数据库出来那? 会用就好!)

Sqlserver 高级基础 约束整理_外键约束_18

下面是语句

Sqlserver 高级基础 约束整理_约束_19