Oacle 下对标下元素约束条件的添加与删除


  1. 插入元素
alter table table_name
add add_name data_type;
  1. 添加约束条件 NOT NULL
alter table table_name
modify add_name constraint add_name_nn not null;

注意:添加 not null 的时候,由于无法选择被添加的变量,所以选择用修改命令modify代替add.

  1. 添加外键
alter table table_name
add constraint var_name_fk foreign key(var_name) references table_name2(var);

而添加外键的时候,在foreign key 后会有被添加外键的变量,所以直接用add.

不过要想将not null与外键一起添加进去,貌似有点不可行。反正我弄了好久都没成功,欢迎广大朋友试验,如若成功,请告知^.^

像这种方法是不行滴:

alter table score
modify s_no integer constraint score_s_no_nn not null,
modify c_no integer constraint score_c_no_nn not null,
modify s_no integer constraint score_s_no_nn not null;
报错
ERROR at line 2:ORA-01735: invalid ALTER TABLE option

还有这种也不行

alter table score
modify s_no integer constraint score_s_no_nn not null,c_no integer constraint score_c_no_nn not null;
modify s_no integer constraint score_s_no_nn not null,
或是这种更改约束方法
alter table course
modify d_no constraint course_d_no_fk foreign key(d_no) references dept(no)
modify d_no constraint course_d_no_fk foreign key(d_no) references dept(no)

4.删除约束条件

在建表的时候,如果给每一个约束条件起名字如:var_name_fk、add_name_nn等等。在删除约束条件的时候都会很轻松!如可以直接以如下方式删除

alter table table_name

drop constraint var_name_fk;

或者

alter table table_name

drop constraint add_name_nn;


--- 参考:
[oracle添加notnull约束](http://www.2cto.com/database/201503/382810.html)

Oracle:Create, alter, drop and add!的更多相关文章

  1. 数据定义: CREATE、DROP、ALTER

    CREATE DATABASE 句法 CREATE DATABASE [IF NOT EXISTS] db_name 数据库.表.索引.列和别名 中被给出. 如果数据库已经存在,并且你没有指定 IF ...

  2. MSSQLServer知识点总结:DDL(create,alter,drop,declare)-未完整

    一.开发环境 Window10 二.开发工具 SQLServer2012 三.数据库的操作 1.创建 (1)方式一:使用默认的配置信息 create database T_mydb2 (2)方式二:自 ...

  3. Oracle:create pfile from spfile:rac下要小心该操作啊!

    默认在原位置创建一个pfile的ora初始化参数文件!! 这在rac下会带来问题,因为rac下,当使用asm存储时,instance的启动参数文件就是pfile(其内容是指向一个spfile).如果不 ...

  4. 【原】MyBatis执行DDL:create table,drop table等等

    [前言] 对MyBatis一直停留在仅仅会用的阶段,常用的场景就是通过MyBatis对表数据进行DML(insert, delete, update等)操作,从来没有想过通过MyBatis对数据库 进 ...

  5. oracle DDL(create、alter、drop)

    一.创建表1.创建表CREATE TABLE <table_name>( column1 DATATYPE [NOT NULL] [PRIMARY KEY], column2 DATATY ...

  6. Oracle:对表的CREATE、ALTER、INSERT、RENAME、DELETE操作练习以及主外键约束

    -创建一个student表,设定表的主键为学号CREATE TABLE student( sno VARCHAR2(10) PRIMARY KEY, --列级约束 sno VARCHAR2(20) C ...

  7. 【MySQL】DDL数据定义语言的基本用法create、drop和alter(增删改)

    DDL 的基础语法 文章目录 DDL 的基础语法 对数据库进行定义 对数据表进行定义 创建表结构(数据表) 设计工具 修改表结构 小结 参考资料 简单复习一波 SQL必知必会 DDL 的英文全称是 D ...

  8. 关键字(7):属性的增删改add,drop,modify

    新建一张表: ));   注意:新建表时,表里面至少要有一个字段   删除整张表: drop table nac_user.a_bt;   增加表的一个属性:  ) default('M') 新增外键 ...

  9. ORACLE—002:Create创作型

    --用于工作的积累SQL ORACLE另外还有的类型.储过程.函数等的输入输入出. 以下看下创建. 使用方法 CREATE OR REPLACE TYPE 类型名称 AS OBJECT(  字段1   ...

随机推荐

  1. PL/SQL编程—变量

    SQL> declare c_tax_rate ,):=0.03; v_name ); v_passwd ); v_sale ,); v_tax_sale ,); begin select na ...

  2. PAT 天梯赛 L1-022. 奇偶分家 【水】

    题目链接 https://www.patest.cn/contests/gplt/L1-022 AC代码 #include <iostream> #include <cstdio&g ...

  3. Linux信号signal处理机制

    信号机制是进程之间相互传递消息的一种方法,信号全称为软中断信号,也有人称作软中断.从它的命名可以看出,它的实质和使用很象中断.所以,信号可以说是进程控制的一部分.         一.信号的基本概念 ...

  4. HTML,CSS,font-family:中文字体的英文名称

    宋体 SimSun 黑体 SimHei 微软雅黑 Microsoft YaHei 微软正黑体 Microsoft JhengHei 新宋体 NSimSun 新细明体 PMingLiU 细明体 Ming ...

  5. 欧拉筛法(phi,d,prime)

    筛法求素数的核心就是让每个合数被它的最小质因子筛掉,那么剩下来的就是素数了. 于是在这个过程中我们可以顺便求出每个数的φ().d().e(). ϕ:小于等于该数的与它互质的数的个数(一个数与其自身互质 ...

  6. 举例讲解Linux中tcpdump工具的应用

    先来看一个比较基本的用法: tcpdump -i eth0 其中,eth0为参数值,表示需要抓包的网口,这是个必需参数哦. tcpdump的具体参数及意义: -i:指定tcpdump监听的网络接口 - ...

  7. v4l2 下载

    To clone the master development repository, install git, and run: git clone git://github.com/torvald ...

  8. pexpect实现远程操作

    #!/usr/bin/pythonimport pexpectimport syssip="ssh root@172.10.224.183"try: child=pexpect.s ...

  9. Mybatis中接口和对应的mapper文件位置配置深入剖析

    首先要说明的问题是,Mybatis中接口和对应的mapper文件不一定要放在同一个包下,放在一起的目的是为了Mybatis进行自动扫描,并且要注意此时java接口的名称和mapper文件的名称要相同, ...

  10. Effective C++ 条款05:了解C++编写并调用哪些函数

    规则一 编译器默认操作 // 你认为 class Empty { }; // 实际上 class Empty { public: Empty() { ... } // default 构造函数 Emp ...