标签:15 name 数据库 约束 完整性 key MySQL 为空 id
文章目录
数据完整性
提示:以下是本篇文章正文内容,下面案例可供参考
一、什么是数据完整性
作用:保证 用户的输入的数据 保存到数据库 是正确的。
比如:
年龄:应该是数字,
学号:应该是不重复的。
成绩:不能为空
……
怎么去保证数据的完整性:添加约束。
完整性约束分类:
实体(记录)完整性
域完整性
引用完整性
二、实体完整性(行)
实体(entity):就是表中一行的(记录)数据
实体完整性:标识 每一条数据不重复
约束类型(通过什么方式解决这个问题):
主键约束(primary key)
不能为空,不重复
唯一约束(unique)
不重复,可以为空
自列增长(auto increment)
序号自己会改变
1.主键约束(primary key)
特点:不能为空,不重复
没有约束
代码如下(示例):
create table stu0(
id int,
name varchar(50),
):
insert into stu0(name) values("张三丰");
方式一:创建表,并且添加主键约束
代码如下(示例):
create table stu1(
id int primary key,
name varchar(50)
);
方式二:
代码如下(示例):
create table stu2(
id int,
name varchar(50),
primary key(id,name)
);
成功:
insert into stu1(id,name) values(2,"张三丰");
测试一:
insert into stu1(id,name) values(null,"张三丰");
失败。提示不能为空
ERROR 1048 (23000): Column 'id' cannot be null
测试二:
插入重复数值:报错
ERROR 1062 (23000): Duplicate entry '2' for key 'PRIMARY'
select * from stu1;
自增长列(auto increment)
2.唯一约束(unique)
不重复,不可为空
给名字 添加 唯一的 约束
代码如下(示例):
create table stu3(
id int primary key,
name varchar(50) unique
);
insert into stu3(id,name) value (1,"张三丰");
insert into stu3(id,name) value (2,"张三丰");
~~报错提示:ERROR 1062 (23000): Duplicate entry '张三丰' for key 'name'~~
insert into stu3(id,name) value(2,"张三");
总结
域名完整(单元格,字段,列)
城完整性:用来限制单元格的数据的正确性。
性别:只能填写男/女
名字:必须填写,非空
城完整性包含:
数据类型
非空约束(not null)
默认值约束(default)
标签:15,name,数据库,约束,完整性,key,MySQL,为空,id 来源: https://blog.csdn.net/hunhan_1220/article/details/116379597
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。