oracle 完整约束,【oracle】完整性約束
CREATE TABLE STUDENT
(SNOCHAR(10) ,
SNAME CHAR(25),
SSEX CHAR(5),
SAGE NUMBER(2), --CONSTRAINT,為約束對象取個別名
SDEPT CHAR(25),
CONSTRAINT PK_SNO PRIMARY KEY(SNO),
CONSTRAINT UK_SNAME UNIQUE(SNAME)
);
CREATE TABLE COURSE
(CNOCHAR(5),
CNAME CHAR(50) NOT NULL,
CPNOCHAR(5), --非空約束(NK)出錯時會出現完整的出錯提示,所以不需要用CONSTRAINT來取別名
CCREDIT INT,
CONSTRAINT PK_CNO PRIMARY KEY(CNO)
);
CREATE TABLE SC
(SNOCHAR(10),
CNOCHAR(5),
GRADE INT,
CONSTRAINT PK_SNO_CNO PRIMARY KEY(SNO,CNO), --主碼有兩個屬性構成
CONSTRAINT FK_SNO FOREIGN KEY(SNO) REFERENCES STUDENT(SNO),
CONSTRAINT FK_CNO FOREIGN KEY(CNO) REFERENCES COURSE(CNO)
);
CREATE TABLE MEMBER
(MID NUMBER,
NAMEVARCHAR2(200) NOT NULL,
EMAIL VARCHAR2(50),
AGENUMBER,
SEXVARCHAR2(10),
CONSTRAINT PK_MID_NAME PRIMARY KEY(MID,NAME),
CONSTRAINT UK_EMAIL UNIQUE(EMAIL),
CONSTRAINT CK_SEX CHECK(SEX IN('男','女')), --檢查約束
CONSTRAINT CK_AGE CHECK(AGE BETWEEN 0 AND 200)
);
SELECT *
FROM user_constraints --通過數據字典查看約束
WHERE TABLE_NAME='MEMBER';
ALTER TABLE MEMBER
ADD CONSTRAINT PK_MID --增加主鍵約束
PRIMARY KEY(MID);
ALTER TABLE MEMBER
ADD CONSTRAINT CK_AGE --增加檢查約束
CHECK(AGE BETWEEN 0 AND 200);
ALTER TABLE MEMBER
MODIFY(NAME VARCHAR2(20) NOT NULL); --只能通過此方法增加非空約束
ALTER TABLE MEMBER
DISABLE CONSTRAINT UK_EMAIL; --禁用UK_EMAIL約束
ALTER TABLE STUDENT
DISABLE CONSTRAINT PK_SNO CASCADE; --字表中有約束,必須使用CASCADE才能成功
ALTER TABLE MEMBER
ENABLE CONSTRAINT UK_EMAIL; --啟用約束,若想啟用,必須刪掉表中違反約束的數據
ALTER TABLE STUDENT
ENABLE CONSTRAINT PK_SNO; --啟用約束
ALTER TABLE MEMBER
DROP CONSTRAINT UK_EMAIL; --刪除約束,若要刪除主鍵約束,必須要級聯
oracle 完整约束,【oracle】完整性約束相关推荐
- Linux下docker安装配置oracle,oracle创建用户并远程连接,实测可用!
最近在给同学弄毕业设计的数据库,因为oracle在个人电脑上极不稳定,所以他的电脑数据库崩溃了,这时候我就在docker上为他拉了一个oracle,解决了问题. docker的安装共有以下几步,实测没 ...
- oracle自动化,Oracle 自动化备份脚本
备份脚本,基于linux,windows环境需要适当修改. 主脚本,会调用2,3步骤的rman.sql&status.sql $ more main.sh #set env ######### ...
- it oracle 培训,Oracle数据库技术培训_OracleDBA数据库工程师_Oracle数据库在线学习视频教程_IT职业培训-51CTO学院_精培学院...
第一阶段:企业级Oracle数据库实战入门与集群实施 特色:本阶段部分内容为OCP/OCM课程内容,以企业实战项目为主导讲解,实用性更强. 第1章 Oracle数据库高级工程师职业发展与学习方法 第2 ...
- 【oracle】oracle经典sql,exception,database link纠错
[oracle]oracle经典sql,exception,database link纠错 1111-01 oracle经典sql,exception,database link纠错 1.给表tabl ...
- oracle v$system_event,45.Oracle杂记——Oracle常用动态视图v$system_event
45.Oracle杂记--Oracle常用动态视图v$system_event 视图v$system_event 显示一个事件的总共等待. 如果不支持计时机制,那么TIME_WAITED和AVERAG ...
- oracle 202,Oracle Certification 1Z0-202题库
Oracle Other Oracle Certification 1Z0-202 考题名称:Siebel 8 Consultant Exam 版本号:V2.40 更新时间:2011-09-14 考题 ...
- oracle安装就是home3,rhel3上安装Oracle(来自Oracle网站)
http://www.oracle.com/technology/global/cn/pub/articles/smiley_10gdb_install.html 1.从网上下载redhat Ente ...
- php对应哪个oracle版本,Oracle 版本说明
Oracle 的版本号很多,先看11g的一个版本号说明: 注意: 在Oracle 9.2 版本之后, oracle 的maintenance release number 是在 Oracle的版本号很 ...
- 更改oracle 端口,Oracle数据库11G R2 修改服务端口
找到listener.ora文件: /opt/oracle/app/product/11.2.0/dbhome_1/network/admin/listener.ora 修改端口为21521:LIST ...
最新文章
- MyCat 入门指南
- /dev/mtdN和/dev/mtdblockN的区别
- 计算机控制系统期末判断题,计算机控制系统期末试题.doc
- Composer更新慢的终极解决方案-转
- 【转】C# HttpWebRequest提交数据方式
- 壁纸控的你需要看这里!
- win7 64位系统没有语音识别,该如何解决?
- 视觉SLAM十四讲学习笔记——第五讲--相机与图像
- 在Mac上查找和删除相似或重复的照片的三种方法
- 《Python核心编程》18.多线程编程(二)
- NumPy 文件存取 tofile,fromfile, load,save
- 7行代码让B站崩溃3小时,竟因“一个诡计多端的0”
- 多目标优化系列(六)SPEA
- java程序笑脸怎么打_我编写的JAVA程序为什么在编译执行后会先打出一个笑脸呢?...
- tableau ODBC驱动下载方法和链接(连接mysql的驱动)
- S/4 HANA中的MATDOC和MATDOC_EXTRACT
- 零输入响应,零状态响应,全响应
- 二进制安装k8s v1.22.8集群
- JavaScript深入浅出第2课:函数是一等公民是什么意思呢?
- 【微信小程序】picker 滚动选择器
热门文章
- 科大讯飞成为北京 2022 年冬奥会和冬残奥会官方自动语音转换与翻译独家供应商
- 高薪的 10 倍工程师不能带来 10 倍的产出?
- 华为鸿蒙微内核已经投入商用;PC 端将支持打开小程序;VS Code 1.37 发布 | 极客头条...
- 直接拿来用!GitHub 标星 5000+,学生党学编程有这份资料就够了
- “Scrum 敏捷开发都是骗人的!”
- 华为发布智能数据解决方案FusionData,重定义数据基础设施,释放数据价值
- GitHub:围剿Python计划!程序员:早知必有一战!你站谁?
- 被窃听、被定位:“裸奔时代”还有隐私吗?
- 聊天宝解散罗永浩退出;三大运营商回应提速降费;天猫 iPhone XS 最高降 2000 | 极客头条...
- 开源巨献:2017 年 Google 开源了这些超赞的项目