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