数据完整性约束

数据完整性约束

知道什么是数据完整性
知道如何使用约束

  1. 数据完整性
    存储在数据库中的所有数据值均正确的状态。

如果数据库中存储有不正确的数据值,则该数据库称为已丧失数据完整性。

数据完整性包括:

域完整性
实体完整性
参考完整性
数据库通过约束来保证数据完整性。

它通过对表的行或列的数据做出限制,来确保表的数据的准确性,完整性、唯一性,可靠性、联动性。

  1. 数据常见问题
    数据冗余

失去数据完整性

数据缺少唯一标识

失去实体完整性

失去域完整性

失去引用完整性

  1. 数据库常用约束
    主键约束 作用:让数据具有唯一标识 语法:primary key

create table tpk(id int primary key , name char(10));

字段被设置了主键约束,同时也具有了唯一性约束和非空约束。 在字段中插入重复数据时,或不给数据时会报错。

自动增长 作用:让数字值自动累加 语法:auto_increment 自动增长设置在数值型字段上,需要配合主键约束一起使用。 如果字段没有设置主键约束,是不允许设置自动增长的。

create table tai(id int auto_increment primary key,name varchar(10));

唯一性约束 作用:保证数据的准确性,不会出现重复数据 语法:unique

create table tuni(id int unique,name char(10));

一个表中可以给多个字段设置唯一性,如果有需要的话。

非空约束 作用:不允许字段为空,添加数据时必须给值 语法:not null

create table tnn(id int,name char(10) not null);

默认约束 作用:在添加数据时,如果没有给定有默认约束字段的数据,该字段使用默认值填充 语法:default

create table tdt(id int,name char(10) default ‘NoName’);

外键约束 作用:让两表之间产生联动关系 语法:foreign key(字段名) references 表名(字段名)

– 表1
create table fClass(id int primary key,name char(10));
– 表2
create table fStudent(id int primary key auto_increment, name char(10), cid int, foreign key(cid) references fClass(id));

设置外键约束字段所关联的字段,必须是主键约束字段。

想要删除有设置外键的表,必须先删除外键所关联的表。

drop table fStudent;
drop table fClass;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值