其他数据库对象:约束、 索引、视图、序列、 存储过程、函数
约束:constraint
定义:强加在表中的规则或者条件
作用:让表中的数据更加符合实际业务要求,如果录入不符合的数据,则拒绝录入
select * from emp;
insert into emp (empno,ename)values(888,'yy');
insert into emp (empno,ename)values(888,'yy');
insert into emp (empno,ename)values(888,'yy');
主键约束:empno
数据特点:非空且唯一
select * from emp;
insert into emp(empno,ename)values(null,'ttt');
1.约束的分类
1.按照约束效果分类:
- 1.1主键约束 primary key
作用:字段中不能出现重复值,也不能出现空值
- 1.2唯一约束 unique
作用:字段中不能出现重复值
- 1.3外键约束 foreign key
作用:字段中的取值来源于另一张表的某个字段
例子:emp表中的deptno的取值来源于dept表中deptno
select * from emp for update;
- 1.4检查约束 check
作用:自定义约束内容 类似 where 后边的条件
- 1.5 非空约束 not null
作用:字段中不能出现空值
- 1.6 默认值 default
作用:字段中不插入数据时,系统会自动填入默认值
2.按照约束创建的时候,是否和字段一起声明分类:
- 2.1 行级约束
在建表的时候,声明字段及字段属性时,紧随其后去声明的约束
create table 表名
(
列1 字段属性1 约束1,
列2 字段属性2 约束2,
....