数据库 数据库的完整性
数据完整性:
保证用户输入的数据保存到数据库中是正确的.
在创建表的时候给表添加约束
完整性分类:实体完整性: 一行数据代表一个实体 作用:标记每一行数据不重复,行级约束
约束类型:
主键约束 每个表中要有一个主键 数据唯一,且不能为null primary key
两种方式创建表的主键列子:create table 表名(id int primary key,字段2 类型,字段3 类型)
create table 表名(id int,字段2 类型 primary key(id))
联合主键:create table 表名(id int,name varchar(20),primary key(id,name))
先建表在添加主键: alter table 表名 add constraint primary key(id);
唯一约束 指定列的数据不能重复 可以为空 unique
例子:create table 表名(id int,name varchar(10) unique);
自动增长 指定列的数据自动增长 即使数据删除,还是从输出的序号继续往下 auto_increment
例子: create table 表名(id int primary key auto_increment, name varchar(10))
域完整性: 限制此单元格的数据正确,不对照此列的其他单元格比较 域代表当前的单元格
数据类型:数值类型 日期类型 字符串类型
非空约束(not null)
默认值约束(default)
参照完整性
数据库的主键和外键类型一定要一致
两个表必须要是InnoDB引擎
设置参照完整性后,外键当中的内值,必须得是主键当中的内容
一个表设置当中的字段设置为主键,设置主键的为主表
创建表时,设置外键,设置外键的为子表