数据库中的约束

什么是约束?

为了确保表中的数据的完整性(准确性、正确性),为表添加一些限制。是数据库中表设计的一个最基本规则。使用约束可以使数据更加准确,从而减少冗余数据(脏数据)。

数据库中的约束类型分为以下几个大类

 

非空约束(NOT NULL)

非空约束指的是表中的某一个字段的内容不允许为空,如果要使用非空约束,只需要在每个列的后面利用“NOT NULL”声明即可。

 

唯一性约束(UNIQUE)

唯一性约束要求该列唯一,允许为空,但只能出现一个空值。唯一约束可以确保一列或者几列不出现重复值。

所有列完成后指定唯一约束:

CONSTRAINT 约束名 UNIQUE 字段名

直接指定某列为为唯一约束:

字段名 数据类型 UNIQUE

UNIQUE 和 PRIMARY KEY 的区别:

一个表中可以有多个字段声明为 UNIQUE ,但只能有一个 PRIMARY KEY 声明;声明为 PRIMARY KEY 的列不允许有空值,但是声明为 UNIQUE 的字段允许空值的存在。

 

主键约束(PRIMARY KEY)

主键列的数据类型不限,但此列必须是唯一并且非空。

主键是一个表中能标识唯一行的标志(也有其他方法表示唯一行,如唯一列)。

主键主要用在查询单调数据,修改单调数据和删除单调数据上。

两种设置主键约束的语法格式:

列名 列类型 PRIMARY KEY [默认值]

[CONSTRAINT ] PRIMARY KEY [字段名]

 

外键约束(FOREIGN KEY)

外键约束:这个是实现表与表之间的约束,从表的字段值必须在主表中。

外键约束(FOREIGN KEY)是表的一个特殊字段,经常与主键约束一起使用。对于两个具有关联关系的表而言,相关联字段中主键所在的表就是主表(父表),外键所在的表就是从表(子表)。

加入外键的条件:

1、两个表有相同属性字段,取值范围相同。

2、外键在主表中是主键或者是唯一字段。

3、外键可以是多个字段的组合。

语法1:   [CONSTRAINT <外键名>] FOREIGN KEY 字段名 [,字段名2,…]

语法2:   REFERENCES <主表名> 主键列1 [,主键列2,…]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值