转自:http://jingyan.baidu.com/article/f54ae2fccda68d1e93b84942.html

示例:

  --班级表

CREATE TABLE TCLASS(
  cl_id NUMBER,
  cl_name VARCHAR2(20) NOT NULL
);

  --给TCLASS表添加主键

ALTER TABLE TCLASS ADD CONSTRAINT PK_TCLASS_CL_ID PRIMARY KEY(cl_id);

  ---学生表

CREATE TABLE STUDENT(
  st_id VARCHAR2(30), --单行注释 主键
  st_code VARCHAR2(18), --唯一约束
  st_name VARCHAR2(30), --非空约束
  st_age NUMBER,
  st_birthday DATE, --默认约束
  st_sex VARCHAR2(4), --添加检查约束
  cl_id NUMBER --添加外键(引用的是主表的主键)
);

  --给STUDENT表加主键

ALTER TABLE STUDENT ADD CONSTRAINT PK_STUDENT_ST_ID PRIMARY KEY(st_id);

  --给name列家非空约束

ALTER TABLE STUDENT MODIFY st_name CONSTRAINT NAME_NOT_NULL NOT NULL;

  --给st_code添加唯一约束

ALTER TABLE STUDENT ADD CONSTRAINT CODE_UNIQUE UNIQUE(st_code);

  

  --st_sex只能是男或女

ALTER TABLE STUDENT ADD CONSTRAINT SEX_CHECK CHECK(st_sex='男' OR st_sex='女');

  --st_birthday默认为sysdate

ALTER TABLE STUDENT MODIFY st_birthday DATE DEFAULT SYSDATE;

  ---添加外键

ALTER TABLE STUDENT ADD CONSTRAINT FK_CL_ID FOREIGN KEY(cl_id) REFERENCES TCLASS(cl_id);

ORACLE添加表约束的语法示例的更多相关文章

  1. alter table添加表约束

    翻阅了一下网上关于alter table添加表约束的资料,学习下,然后供自己以后使用. 仅仅供自己使用... 总结alter table ### add constraint ## 使用方法 添加表约 ...

  2. 自己动手为PHP7添加新的语法特性

    好文章! nikic介绍了如何向PHP添加新的语法特性,原文写的非常精彩,具体是添加in语法功能,使最终实现: <?php $words = ['hello', 'world', 'foo', ...

  3. oracle 存储过程的基本语法

    原文:oracle 存储过程的基本语法 1.基本结构 CREATE OR REPLACE PROCEDURE 存储过程名字(    参数1 IN NUMBER,    参数2 IN NUMBER) I ...

  4. oracle中to_date详细用法示例(oracle日期格式转换)

    这篇文章主要介绍了oracle中to_date详细用法示例,包括期和字符转换函数用法.字符串和时间互转.求某天是星期几.两个日期间的天数.月份差等用法 TO_DATE格式(以时间:2007-11-02 ...

  5. java8-lambda常用语法示例

    常用语法示例: public static void main(String[] args) { List<OrderInfo> orderInfoList = Lists.newArra ...

  6. Linux常用命令语法+示例

    原文出自:https://blog.csdn.net/seesun2012 Linux常用命令:Linux查看日志命令总结:Tomcat相关:Linux配置网卡,连接外网:Linux下安装JDK:Li ...

  7. Oracle 添加 scott 示例用户

    学习SQL有一段时间了,但是也忘记的差不多了,今天有赶紧复习复习,然后发现一个问题,为啥之前看的视频教程,马士兵用的Oracle有scott用户和那些表格,而我的没有?难道是Oracle取消了?然后百 ...

  8. oracle 表字段添加 修改 删除语法

    修改列名 alter table 表明 rename column rename 老列名 to 新列名添加 字段alter table 表名 add(字段名 类型):删除字段alter table 表 ...

  9. Oracle自定义函数和存储过程示例,自定义函数与存储过程区别

    参考资料:http://www.newbooks.com.cn/info/60861.html oracle自定义函数学习和连接运算符(||) 贴一段中文文档示例,应该就可以开始工作了: --过程(P ...

随机推荐

  1. Nginx负载均衡和LVS负载均衡的比较分析

    LVS和Nginx都可以用作多机负载的方案,它们各有优缺,在生产环境中需要好好分析实际情况并加以利用. 首先提醒,做技术切不可人云亦云,我云即你云:同时也不可太趋向保守,过于相信旧有方式而等别人来帮你 ...

  2. javascript设计模式学习之十二——享元模式

    一.享元模式的定义及使用场景 享元模式是为了解决性能问题而诞生的设计模式,这和大部分设计模式为了提高程序复用性的原因不太一样,如果系统中因为创建了大量类似对象而导致内存占用过高,享元模式就非常有用了. ...

  3. 查看docker中container的ip

    使用命令 docker inspect 容器ID 然后过虑出 IPAddress 即可查看 Docker 的 IP docker inspect 容器ID | grep IPAddress

  4. 微信成为开发者C#代码

    第一句话都会这么去写:程序猿就是苦逼,除了开发还要会写博文!今天咱就和大家探讨下如何让自己成为开发者!那么怎么才能成为开发者呢? 首先给大家一个微信的截图,看到这个截图,是不是有想去尝试的冲动?

  5. oracle开启numa的支持

    在11.2中,即使是系统支持numa架构,oracle默认也不再检测硬件是否支持numa,也不开启对numa的支持. 要想开启对numa的支持,必须设置隐含参数: _enable_NUMA_suppo ...

  6. java Double封装类的对象保留两位小数

    double value = 22.365454; DecimalFormat df = new DecimalFormat("##.00");value = Double.par ...

  7. LIS 最长递增子序列

    一.最长公共子序列 经典的动态规划问题,大概的陈述如下: 给定两个序列a1,a2,a3,a4,a5,a6......和b1,b2,b3,b4,b5,b6.......,要求这样的序列使得c同时是这两个 ...

  8. 解决Ueditor 不兼容IE7 和IE8

    引用Ueditor的js 的时候用 绝对路径

  9. Leetcode: Elimination Game

    There is a list of sorted integers from 1 to n. Starting from left to right, remove the first number ...

  10. Lintcode: Interval Sum II

    Given an integer array in the construct method, implement two methods query(start, end) and modify(i ...