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 ...
随机推荐
- fjutacm 3700 这是一道数论题 : dijkstra O(mlogn) 二进制分类 O(k) 总复杂度 O(k * m * logn)
/** problem: http://www.fjutacm.com/Problem.jsp?pid=3700 按二进制将k个待查点分类分别跑dijkstra **/ #include<std ...
- ABAP术语-LUW (Logical Unit of Work)
LUW (Logical Unit of Work) 原文:http://www.cnblogs.com/qiangsheng/archive/2008/03/04/1089637.html Logi ...
- Java语言利用Collections.sort对Map,List排序
1.main方法包含TreeMap排序1,TreeMap排序2,HashMap排序,List<Integer>排序,List<Bean>排序,List<Map>排序 ...
- 解决每次运行Xcode,都需要输入密码的问题
新买的Mac,在安装了 Xcode 7.1的时候,不知道是配置信息哪里手残了一下,导致每次运行Xcode模拟器 后 都需要输入一次密码. 为此在网上也是查阅了不少的资料,当时 所谓的 XCode--- ...
- 【vlan-给予mac地址认证】
根据项目需求搭建好如下的路由和交换拓扑图: 1:用pc1 ping pc2 使交换机捕捉到4台pc及的 mac地址 查看交换机学习到的mac地址情况 2:配置交换机和pc机之间的接口,根pc机的ma ...
- 一个好用的C# HttpHelper类
/// <summary> /// 类说明:HttpHelper类,用来实现Http访问,Post或者Get方式的,直接访问,带Cookie的,带证书的等方式,可以设置代理 /// 重要提 ...
- 洛谷 P3952
题目描述 小明正在学习一种新的编程语言 A++,刚学会循环语句的他激动地写了好多程序并 给出了他自己算出的时间复杂度,可他的编程老师实在不想一个一个检查小明的程序, 于是你的机会来啦!下面请你编写程序 ...
- JZOJ 5934. 列队
Description Sylvia是一个热爱学习的女孩子. 在平时的练习中,他总是能考到std以上的成绩,前段时间,他参加了一场练习赛,众所周知,机房是一个 的方阵.这 ...
- R语言学习笔记(二十):stringr包中函数介绍(表格)
stringr包中的重要函数 函数 功能说明 R Base中对应函数 使用正则表达式的函数 str_extract() 提取首个匹配模式的字符 regmatches() str_extract_all ...
- myeclipse 安装pydev插件后svn插件失效
为了将python的IDE集成到myeclipse,按照教程安装了myeclipse插件pydev插件,但是按照完后发现,先前安装的svn不见了,解决办法如下: 1. 关闭myeclipse, 2. ...