原创作品,转自请在文章明显位置注明出处:https://www.cnblogs.com/sunshine5683/p/10167717.html
oracle中的约束主要有非空约束(not null)、唯一性约束(unique)、主键约束(primary key)和检查约束(check)。
一、not null:指定在该列的数据不能为null,插入数据时,必须有数据,否则不容许插入
二、unique:指定在该列的数据不能重复,是唯一值,但是容许为null
三、primary key :指定该列的数据不能重复,同时其数据也不能为null,一张表只能有一个primary key,但是可以有多个unique
四、check:指定在该列的数据必须在check所设定的范围或者类型,否则,不能保存数据
接下来根据一个案例,使用上面的所有约束,要求如下:
首先根据要求使用命令行建表:
其次,可以直接使用sqlplus建表(操作简单,此处略)
在以上要求得基础上,增加限制,要求如下:
1、限定商品名不能为空
2、增加身份证号不能重复的约束
3、增加客户住址限定,只能在某几个指定的地方
4、删除约束
alter table 表名 drop constraint 约束名
5、显示约束信息:查看数据字典视图:user_constraints就可以(或者直接plsql查看)
此处注意区别表级定义和列级定义:
列级定义:在定义列的同事定义约束
表级定义:在定义了所有列后,再定义约束,注意:not null 只能在列级定义上。
约束就先总结到这里,下次接着总结索引!