--主、外键约束

create table t(
  id int primary key);

create table t1(
  id int references t(id));

或者
create table t( 
id int constraint pk_t_id primary key);

create table t1(
id int constraint fk_t1_id references t(id));

修改列为主、外键约束

create table emp1(
    id number(10),
    name varchar2(20),
    dept number(10)
  );
  create table dept1(
    dept number(10),
    dept_name varchar2(20)
  );

alter table dept1
  add constraint pk_dept1_dept primary key(dept);

alter table emp1
  add constraint fk_emp1_dept foreign key(dept) references dept1(dept);

--创建非空约束列

create table t(      
    id number(10) constraint nn_t_id not null,
    name varchar2(20),
    company varchar2(20)
  );

修改列为非空约束

create table t(
    id number(10),
    name varchar2(20),
    company varchar2(20)
  );
  alter table t 
  modify id constraint nn_t_id not null;

--创建唯一约束列

create table t(                                            
    id number(10) constraint u_t_i unique,
    name varchar2(20),
    company varchar2(20)
  );

修改列为唯一约束
  alter table t 
  add constraint u_t_id unique(id);

--创建检查约束

create table aa3(       
    id number(10) constraint aa3_id_c check(id>=101),
    name varchar2(20),
    company varchar2(20)
  );

修改列为检查约束
  create table t2(
    id int);
  alter table t2
  add constraint c_t2_id check(id>100);

--删除约束

alter table t2 drop constraint c_t2_id;  
 
注意:对于外键约束的删除时有顺序的,要不然会提示,找到子记录的信息。先删子表的约束,再删父表的约束。  
 
--查看约束

在oracle中,可以通过 user_constraints 视图来查找。
  
select table_name,constraint_name,constraint_type 
from user_constraints 
where table_name='大写的表名'
 
注意:oracle中约束是一用户名为指定范围存放的。也就是说一个用户名下面约束名子不能有重复,但整个数据库中,可以有相同的约束名。

Oracle基础 11 约束 constraints的更多相关文章

  1. Oracle基础知识汇总一

    Oracle基础知识 以下内容为本人的学习笔记,如需要转载,请声明原文链接   https://www.cnblogs.com/lyh1024/p/16720759.html oracle工具: SQ ...

  2. Oracle基础了解

    数据库: 关系型数据库 select * from 表名 非关系型数据库(做不到复杂查询) 以对象的形式进行存储 {"aaa":"ccc"}---键值对 ora ...

  3. ORACLE| ORACLE基础语法汇总

    创 ORACLE| ORACLE基础语法汇总 2018-07-18 16:47:34 YvesHe 阅读数 9141更多 分类专栏: [数据库]   版权声明:本文为博主原创文章,遵循CC 4.0 B ...

  4. oracle基础教程(8)oracle修改字符集

    oracle基础教程(8)oracle修改字符集 1.用dba连接数据库 -->sqlplus / as sysdba 2.查看字符集 -->SELECT parameter, value ...

  5. 数据库表的约束constraints

    数据库表的约束constraints 数据完整性约束 表的数据有一定的取值范围和联系,多表之间的数据有时也有一定的参照关系. 在创建表和修改表时,可通过定义约束条件来保证数据的完整性和一致性. 约束条 ...

  6. Oracle基础篇--00引言

    今天开始,复习oracle基础.主要是以前培训的时候的文档作为结构来梳理知识点,主要目的是把Oracle基础打的扎实点.后面要转做后台开发,或者工作中需要用到数据库知识时也不至于临时抱佛脚. 一直以来 ...

  7. Oracle基础学习笔记

    Oracle基础学习笔记 最近找到一份实习工作,有点头疼的是,有阶段性考核,这...,实际想想看,大学期间只学过数据库原理,并没有针对某一数据库管理系统而系统的学习,这正好是一个机会,于是乎用了三天时 ...

  8. Oracle 基础1

    oracle基础 表空间: Oracle数据库对数据的管理是基于表空间的概念来的, 各种数据的以及存储数据的优化, 实际上也是通过优化表空间来实现的 表空间分类: 永久表空间 用来存放表的数据, 视图 ...

  9. Oracle打怪升级之路一【Oracle基础、Oracle查询】

    前言 背景:2021年马上结束了,在年尾由于工作原因接触到一个政府单位比较传统型的项目,数据库用的是Oracle.需要做的事情其实很简单,首先从大约2000多张表中将表结构及数据导入一个共享库中,其次 ...

随机推荐

  1. (原) MatEditor部- UmateriaEditor中Texture使用过程(1)

    @author: 白袍小道 转载说明原处 插件同步在GITHUB: DaoZhang_XDZ     最后YY需求(手滑)(开黑前弄下,充数,见谅) 1.在理清楚基础套路和细节后,自定义纹理资源,并加 ...

  2. CPU拓扑结构

    本篇旨在认识一下以下三种CPU拓扑结构分别是什么: Symmetric multiprocessing (SMP) Non-uniform memory access (NUMA) Simultane ...

  3. Docker容器-入门级

    1.1 容器简介 1.1.1 什么是 Linux 容器 Linux容器是与系统其他部分隔离开的一系列进程,从另一个镜像运行,并由该镜像提供支持进程所需的全部文件.容器提供的镜像包含了应用的所有依赖项, ...

  4. QueryHelper插件类(hql)

    package cn.itcast.core.util; import java.util.ArrayList; import java.util.List; public class QueryHe ...

  5. P1886 滑动窗口

    题目描述 现在有一堆数字共N个数字(N<=10^6),以及一个大小为k的窗口.现在这个从左边开始向右滑动,每次滑动一个单位,求出每次滑动后窗口中的最大值和最小值. 例如: The array i ...

  6. 【电影影评】梦之安魂曲-败给了BGM和豆瓣影评

    首先,这部电影豆瓣8.7分,一般来说,豆瓣的打分是比较准确的.能反映一个片子的质量,而较少受到环境的影响.但是这种关系当然也不全对,比如某些片子可能特别让某一种人喜欢(如退役军人和军旅题材),而在某些 ...

  7. 洛谷P4592 [TJOI2018]异或 【可持久化trie树】

    题目链接 BZOJ4592 题解 可持久化trie树裸题 写完就A了 #include<algorithm> #include<iostream> #include<cs ...

  8. 【NOIP 模拟赛】区间第K大(kth) 乱搞

    biubiu~~~ 这道题就是预处理,我们就是枚举每一个数,找到左边比他大的数的个数以及其对应的区间,右边也如此,我们把左边的和右边的相乘就得到了我们的答案,我们发现这是O(n^3)的,但是实际证明他 ...

  9. Ubuntu下安装LNMP之独立添加php扩展模块

    使用php的过程中,发现某个扩展没有添加,又不想重新编译php,这个时候我们就需要单独添加需要的扩展模块. 下面以mysqli扩展模块为例,具体介绍安装步骤. 1.安装mysql 具体参考:Ubunt ...

  10. [cdoj 1344]树状数组区间加等差数列

    题目链接:http://acm.uestc.edu.cn/#/problem/show/1344 区间加等差数列本质上就是区间修改区间查询,本来想用线段树做,结果这个题就是卡空间和时间……不得已学了区 ...