11.约束的概念及分类
怎么保证数据唯一?
怎么限制年龄字段在18到80岁?
怎么设置注册时间为当前时间?
回答这些问题,数据库通过约束就能解决上面的三个问题。什么叫约束?约束是在表中定义的用于维护数据完整性的一些规则。
通过约束可以防止错误数据插入,(比如限制了18-80岁,那只能在此区间插入)
通过约束保证表之间的数据一致性。(如外键约束,可以保证两个表或者多个表间的数据是一致的,不是没有联系的。比如项目中的member和inverst表(投资表),这两个表之间的数据存在一致性吗,如果inverst表中的一条数据找不到和它保持一致的用户,那这条投资数据就没有意义,投资)
数据库它是保存数据的仓库,但这种数据的保存是有规则的,不能杂乱无章的存放,通过约束维护组织的完整性 和一致性。
约束的分类
主键约束
primary key Coustrant :唯一性,非空性
默认约束
Default Counstraint :数据的默认值
唯一约束
Unique Counstraint:唯一性,可以空,但只能一个为空
非空约束
not null :指定列不能为空
外键约束
Foreign Key Coustraint :需要建立两表间的关系并引用主表的列
检查约束
Check Counstraint:对该列数据的范围、格式的限制(如:年龄、性别等)