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】完整性約束相关推荐

  1. Linux下docker安装配置oracle,oracle创建用户并远程连接,实测可用!

    最近在给同学弄毕业设计的数据库,因为oracle在个人电脑上极不稳定,所以他的电脑数据库崩溃了,这时候我就在docker上为他拉了一个oracle,解决了问题. docker的安装共有以下几步,实测没 ...

  2. oracle自动化,Oracle 自动化备份脚本

    备份脚本,基于linux,windows环境需要适当修改. 主脚本,会调用2,3步骤的rman.sql&status.sql $ more main.sh #set env ######### ...

  3. it oracle 培训,Oracle数据库技术培训_OracleDBA数据库工程师_Oracle数据库在线学习视频教程_IT职业培训-51CTO学院_精培学院...

    第一阶段:企业级Oracle数据库实战入门与集群实施 特色:本阶段部分内容为OCP/OCM课程内容,以企业实战项目为主导讲解,实用性更强. 第1章 Oracle数据库高级工程师职业发展与学习方法 第2 ...

  4. 【oracle】oracle经典sql,exception,database link纠错

    [oracle]oracle经典sql,exception,database link纠错 1111-01 oracle经典sql,exception,database link纠错 1.给表tabl ...

  5. oracle v$system_event,45.Oracle杂记——Oracle常用动态视图v$system_event

    45.Oracle杂记--Oracle常用动态视图v$system_event 视图v$system_event 显示一个事件的总共等待. 如果不支持计时机制,那么TIME_WAITED和AVERAG ...

  6. oracle 202,Oracle Certification 1Z0-202题库

    Oracle Other Oracle Certification 1Z0-202 考题名称:Siebel 8 Consultant Exam 版本号:V2.40 更新时间:2011-09-14 考题 ...

  7. oracle安装就是home3,rhel3上安装Oracle(来自Oracle网站)

    http://www.oracle.com/technology/global/cn/pub/articles/smiley_10gdb_install.html 1.从网上下载redhat Ente ...

  8. php对应哪个oracle版本,Oracle 版本说明

    Oracle 的版本号很多,先看11g的一个版本号说明: 注意: 在Oracle 9.2 版本之后, oracle 的maintenance release number 是在 Oracle的版本号很 ...

  9. 更改oracle 端口,Oracle数据库11G R2 修改服务端口

    找到listener.ora文件: /opt/oracle/app/product/11.2.0/dbhome_1/network/admin/listener.ora 修改端口为21521:LIST ...

最新文章

  1. MyCat 入门指南
  2. /dev/mtdN和/dev/mtdblockN的区别
  3. 计算机控制系统期末判断题,计算机控制系统期末试题.doc
  4. Composer更新慢的终极解决方案-转
  5. 【转】C# HttpWebRequest提交数据方式
  6. 壁纸控的你需要看这里!
  7. win7 64位系统没有语音识别,该如何解决?
  8. 视觉SLAM十四讲学习笔记——第五讲--相机与图像
  9. 在Mac上查找和删除相似或重复的照片的三种方法
  10. 《Python核心编程》18.多线程编程(二)
  11. NumPy 文件存取 tofile,fromfile, load,save
  12. 7行代码让B站崩溃3小时,竟因“一个诡计多端的0”
  13. 多目标优化系列(六)SPEA
  14. java程序笑脸怎么打_我编写的JAVA程序为什么在编译执行后会先打出一个笑脸呢?...
  15. tableau ODBC驱动下载方法和链接(连接mysql的驱动)
  16. S/4 HANA中的MATDOC和MATDOC_EXTRACT
  17. 零输入响应,零状态响应,全响应
  18. 二进制安装k8s v1.22.8集群
  19. JavaScript深入浅出第2课:函数是一等公民是什么意思呢?
  20. 【微信小程序】picker 滚动选择器

热门文章

  1. 科大讯飞成为北京 2022 年冬奥会和冬残奥会官方自动语音转换与翻译独家供应商
  2. 高薪的 10 倍工程师不能带来 10 倍的产出?
  3. 华为鸿蒙微内核已经投入商用;PC 端将支持打开小程序;VS Code 1.37 发布 | 极客头条...
  4. 直接拿来用!GitHub 标星 5000+,学生党学编程有这份资料就够了
  5. “Scrum 敏捷开发都是骗人的!”
  6. 华为发布智能数据解决方案FusionData,重定义数据基础设施,释放数据价值
  7. GitHub:围剿Python计划!程序员:早知必有一战!你站谁?
  8. 被窃听、被定位:“裸奔时代”还有隐私吗?
  9. 聊天宝解散罗永浩退出;三大运营商回应提速降费;天猫 iPhone XS 最高降 2000 | 极客头条...
  10. 开源巨献:2017 年 Google 开源了这些超赞的项目