mysql 03章_完整性、约束
2024-09-06 08:09:25
1.完整性:数据库中数据的可靠性有效性和合理性我们称为数据的完整性,这样才能保证数据合理符合现实生活中的数据体现。 注:数据完整性的设计应该在设计表的时候就进行设计了,而不是等到数据库中已经存在数据才进行设计和实施,这样会导致完整性可能无法实施,因为已存在的数据已经不合理了 2.约束:为了保证数据的完整性,我们需要使用约束来保证完整性,加约束的过程我们称为实施数据完整性 切记:完整性是设计表的时候就实施了,就是建表的时候还未有数据就要加约束,这样才是正确的设计流程 3.完整性的分类与对应的实施约束 (1)域完整性:对列的要求,实施约束方案:数据类型,默认值,非空,外键 (2)实体完整性:对行的要求,保证行唯一,实施约束方案:主键,唯一,自增长, (3)引用完整性:对某些列的要求,保证来源有据可寻,实施约束方案:外键 (4)自定义完整性:用户的自定义要求较随机,实施约束方案:规则,存储过程,触发器 5.建表的时候添加约束:
(1)主键约束:在字段后面加primary key即可;
(2)非空约束:在字段后面加not null;
(3)自增长约束:在int类型的字段后加auto_increment;
(4)默认值约束:在字段后加“default 默认值”即可
(5)唯一约束:在字段后加unique约束
(6)外键约束:在表最后加foreign key(外键列) references 主键表(主键)即可
6.除了在建表的时候加约束还可以通过修改表来添加约束:
(1)修改表的形式添加主键约束
alter table student add constraint pk_stuNo PRIMARY key (studentno);
(2) 修改表的形式添加外键约束
alter table subjects add CONSTRAINT fk_gradeId foreign key(grade_id) references grade(grade_id)
(3)修改表的形式添加唯一约束
alter table student add CONSTRAINT
uq_stuno UNIQUE (studentno)
注:其他约束是要修改表的列才能做修改
最新文章
- thinkPHP get
- Linux gzip、gunzip
- hdu-5492 Find a path(dp)
- poj3041 二分图最小顶点覆盖
- SqlServer数据库字典--表.视图.函数.存储过程.触发器.主键.外键.约束.规则.sql
- web接入层 传入参数的格式化及web返回值传出数据的参数格式化,都要统一
- HDU 5074 Luck Competition (暴力,概率)
- 利用word2vec对关键词进行聚类
- POJ 1062 昂贵的聘礼 解题报告
- rebbitmq-RPC(C#)
- .NET面向对象特性之多态
- Linux(UBUNTU) 下安装Eclipse
- 【Unity Shaders】Unity里的雾效模拟
- JS引擎线程的执行过程的三个阶段(一)
- Java框架spring Boot学习笔记(六):Spring Boot事务管理
- 加快Gradle的构建过程
- 第一课了解SQL
- 执行update语句mysql5.6报错ERROR 1292 (22007): Truncated incorrect DOUBLE value: '糖糖的坤大叔'
- php -- 魔术方法、魔术常量 简单介绍
- Java happen-before