oracle约束条件
约束条件有5种
- 非空约束(not null):约束该列一定要输入值
主关键字约束(primary key):用来唯一标示表中的一个列,一个表中的主键约束只能有一个
外关键字约束(foreign key):用来约束两个表中列之间的关系
- 唯一约束(unique):用来唯一标示表中的列。与主键约束不同的是,在一个数据表中可以有多个唯一约束
检查约束(check):用来约束表中列的输入值得范围,比如在输入性别时,要求数据库中只能输入男或者女,就可以使用检查约束来约束该列
创建检查约束条件
1.创建表时直接创建检查约束
CREATE TABLE BOOKINFO
(
BOOKID NUMBER,
BOOKNAME VARCHAR2(20),
PUBLISH VARCHAR2(20),
PUBDATE VARCHAR2(20),
PRICE NUMBER(6,3),
AUTHOR VARCHAR2(20),
STORE VARCHAR2(1),
READER NUMBER,
REMARKS VARCHAR2(50),
CONSTRAINT CK_PRICE CHECK(PRICE>=10 AND PRICE <= 100)
);
2.在现有的表中添加检查约束
alter table BOOKINFO add CONSTRAINT CK_PRICE CHECK(PRICE>=10 AND PRICE <= 100)
创建非空约束
1.创建表时直接创建非空约束
CREATE TABLE BOOKINFO
(
BOOKID NUMBER NOT NULL,
BOOKNAME VARCHAR2(20) NOT NULL,
PUBLISH VARCHAR2(20),
PUBDATE VARCHAR2(20),
PRICE NUMBER(6,3),
AUTHOR VARCHAR2(20),
STORE VARCHAR2(1),
READER NUMBER,
REMAERKS VARCHAR2(50)
);
CREATE TABLE BOOKINFO
(
BOOKID NUMBER,
BOOKNAME VARCHAR2(20),
PUBLISH VARCHAR2(20),
PUBDATE VARCHAR2(20),
PRICE NUMBER(6,3),
AUTHOR VARCHAR2(20),
STORE VARCHAR2(1),
READER NUMBER,
REMAERKS VARCHAR2(50),
CONSTRAINT CK_BOOKID CHECK(BOOKID IS NOT NULL),
CONSTRAINT CK_BOOKNAME CHECK(BOOKNAME IS NOT NULL)
);
2.在现有的表中添加非空约束
alter table BOOKINFO add CONSTRAINT CK_PRICE CHECK(BOOKID IS NOT NULL)
创建唯一约束
关键字UNIQUE
创建方法与主键相似
主键与外键的创建与关联
http://www.cnblogs.com/lm970585581/p/7076084.html
删除约束
alter table test
drop constraint 约束名;
oracle约束条件的更多相关文章
- oracle约束条件状态
Oracle完整性约束有一下4种: • DISABLE NOVALIDATE • ENABLE NOVALIDATE • DISABLE VALIDATE • ENABLE VALIDATE • ...
- 增加 修改oracle约束条件
ALTER TABLE TB_ZJGL_DWSB_GRMX ADD CONSTRAINT SFZH_UNIQUE UNIQUE(SFZH); ALTER TABLE TB_ZJGL_DWS ...
- orace学习操作(2)
一.Oracle视图 视图是虚表,没有具体物理数据,是通过实体表的一种计算映射逻辑.主要就是为了方便和数据安全: 实际当中的数据依然存在我们的实际表里面,只不过取数据的时候根据这个视图(子查询)从实际 ...
- oracle违反完整约束条件
oracle违反完整约束条件 Oracle ORA-02292: 违反完整约束条件 (UNITELE.TA_SUB_REFERENCE3) - 已找到子记录 A表被B表引用,删除A表的时候提示ORA- ...
- 查看Oracle当前用户下的信息(用户,表视图,索引,表空间,同义词,存储过程函数,约束条件)
0.表空间 SQL>select username,default_tablespace from user_users; 查看当前用户的角色 SQL>select * from user ...
- ORACLE之莫名---ORA-02290: 违反检查约束条件
最近碰到一个十分棘手的问题,Java程序插入空数据到oracle时报ORA-02290: 违反检查约束条件(XXXX.×××××),这明显是在设置不可为空的字段上插入为空内容导致,但是检查数据库表后发 ...
- oracle ORA-02292: 违反完整约束条件
我是处于工作中没用过oracle的状态,这不,记录下这个小小的问题.哈哈. 表是公司的平台组定义的.前几天为了测试程序,想删掉一些记录,然后使用delete语句,出现这个东东:oracle ORA-0 ...
- oracle数据库名称已被一现有约束条件占用
使用oracle数据库出现名称已被一现有约束条件占用的错误,我的原因是在同一个库中有一个表使用了外键FK_SNO,自己新建的一个表中也使用了外键FK_SNO,导致出现了错误. 这时改变一下外键FK_S ...
- Oracle创建表、修改表、删除表、约束条件语法
一. 使用create关键字创建表 --(1)创建新表use 数据库(在那个数据库中建表)create table 表名(字段名1(列名) 数据类型 列的特征,字段名2(列名) 数据类型 列的特征(N ...
随机推荐
- Percona-Tookit工具包之pt-visual-explain
Preface As usual we will check the MySQL executed plan of SQL query by execute "explain ...
- Firewalld共享上网及本地yum仓库搭建
1.firewalld共享上网 1.服务端操作(有外网的服务器) 1.开启防火墙并加入开机自启动 [root@zeq ~]# systemctl start firewalld [root@zeq ~ ...
- centos7-mongodb3.4.6集群的搭建
0.需要环境 安装包:mongodb-linux-x86_64-3.4.6.tgz 安装路径:/usr/mongodb 服务器: 192.168.177.131/132/133 mongos 2000 ...
- jqGrid使用手册
JQGrid是一个在jquery基础上做的一个表格控件,以ajax的方式和服务器端通信. JQGrid Demo 是一个在线的演示项目.在这里,可以知道jqgrid可以做什么事情.jQgrid 使用详 ...
- python装饰器+递归+冒泡排序
冒泡排序 li = [33, 2, 10, 1,23,23523,5123,4123,1,2,0] for k in range(1,len(li)): for i in range(len(li) ...
- stm32+lwip(五):以太网帧发送测试
我是卓波,很高兴你来看我的博客. 系列文章: stm32+lwip(一):使用STM32CubeMX生成项目 stm32+lwip(二):UDP测试 stm32+lwip(三):TCP测试 stm32 ...
- 【python3.X】Scrapy学习途径参考
如何爬取属性在不同页面的itemhttp://scrapy-chs.readthedocs.io/zh_CN/0.24/topics/request-response.html#topics-requ ...
- lnmp操作
LNMP 1.2+状态管理: lnmp {start|stop|reload|restart|kill|status}LNMP 1.2+各个程序状态管理: lnmp {nginx|mysql|mari ...
- 在Kotlin上怎样用Mockito2 mock final 类(KAD 23)
作者:Antonio Leiva 时间:Mar 2, 2017 原文链接:https://antonioleiva.com/mockito-2-kotlin/ 如我们在前面文章中谈到的,Kotlin最 ...
- Kotlin的属性委托:无上下文情况下Android的赋值(KAD 15)
作者:Antonio Leiva 时间:Mar 9, 2017 原文链接:https://antonioleiva.com/property-delegation-kotlin/ 如我们在前面文章中读 ...