Oracle Database 完整性约束


非空约束

创建表时

Create table table_name(

Column_name datatype NOT NULL,…

);

修改表时

Alter table table_name modify column_name datatype not null;

删除约束

Alter table table_name modify column_name datatype null;

主键约束

创建表时

Create table table_name(

Column_name datatype PRIMARY KEY,…

);

创建表时

Create table table_name(

Column_name datatype ,…,

CONSTRAINT constraint_name PRIMARY KEY(column_name1,…)

);

Desc user_constraints;查看约束数据字典

在修改表时添加

Alter table table_name

Add constraint constraint_name primary key(column_name1,…);

更新主键名字

Alter table table_name

Rename constraint old_name to new _name;

禁用主键约束

Alter table table_name

Disable|enable constraint constraint_name

删除主键约束

Alter table table_name

Drop constraint constraint_name

Drop primary key[cascade]

在创建表时设置外键约束

Create table table1(

Column_name datatype REFERENCES table2(column_name),..)

Constraint constraint_name foreign key(column_name)

References

Table_name(column_name) [on delete cascade]

在修改表时添加外键约束

Alter table table_name

Add Constraint constraint_name foreign key(column_name)

References

Table_name(column_name) [on delete cascade]

禁用外键约束

Alter table table_name

Disable|enable constraint constraint_name

删除外键约束

Alter table table_name

Drop constraint constraint_name

在创建表时设置唯一约束

Create table table_name(column_name datatype UNIQUE,..)

Constraint constraint_name UNIQUE(column_name)

在修改表时添加唯一约束

Alter table table_name

Add Constraint constraint_name UNIQUE (column_name)

删除唯一约束

禁用唯一约束

Alter table table_name

Disable|enable constraint constraint_name

删除外键约束

Alter table table_name

Drop constraint constraint_name

在创建表时设置检查约束

Create table table_name(column_name datatype CHECK(expressions),..)

Constraint constraint_name CHECK(expressions)

在修改表时添加检查约束

Alter table table_name add constraint constraint_name check(expressions);

启用禁用检查约束

Select constraint_name,constraint_type,status from user_constraints where table_name=’table_name’;

Enable|disable constraint constraint_name

删除检查约束

Alter table table_name drop constraint constraint_name;

更改约束的名称

数据字典(user_constrains)

Alter table table_name

RENAME CONSTRAINT old_name TO new_name;

约束

主键约束 用来唯一表示一条数据的字段,其值不能重复,不能为null

create table test

(

nationality varchar2(20),

city varchar(20),

constraint nick_pk primary key(nationality,city)

);

外键约束 引用其他表的主键到本表,在本表中叫外键,用来做表关系

create table test

(

nationality varchar2(20),

city varchar(20),

constraint nick_fk foreign key(nationality) references

tab_name(nationality)

);

非空约束

create table test

(

nationality varchar2(20) not null,

);

唯一约束

create table test

(

nationality varchar2(20) ,

constraint nick_uk unique(nationality)

);

检查约束

create table test1

(

nationality varchar2(20) ,

constraint nick_ck check(nationality <> '美国')

);

默认值

default

设定约束条件无效

disable|enable constraint_name

级联删除<级联更新要使用触发器>

references … ON DELETE CASCADE

08Oracle Database 完整性约束的更多相关文章

  1. python全栈开发day54-mysql库操作、表操作、数据类型、完整性约束

    一.昨日内容回顾 1.mysql的安装 1).解压文件 添加环境变量bin 2).初始化mysql生成数据data文件夹: mysqld --initialize-insecure 3).mysqld ...

  2. PowerDesigner 参照完整性约束(转载)

    PowerDesigner 参照完整性约束: 限制(Restrict):不允许进行修改或删除操作.若修改或删除主表的主键时,如果子表中存在子记录,系统将产生一个错误提示.这是缺省的参照完整性设置. 置 ...

  3. python 全栈开发,Day61(库的操作,表的操作,数据类型,数据类型(2),完整性约束)

    昨日内容回顾 一.回顾 定义:mysql就是一个基于socket编写的C / S架构的软件 包含: ---服务端软件 - socket服务端 - 本地文件操作 - 解析指令(mysql语句) ---客 ...

  4. mysql三-3:完整性约束

    一.完整性约束介绍 约束条件与数据类型的宽度一样,都是可选参数 作用:用于保证数据的完整性和一致性主要分为: PRIMARY KEY (PK) 标识该字段为该表的主键,可以唯一的标识记录 FOREIG ...

  5. 数据库基本表创建 完整性约束 foreign Key

    理解以下几张表的内容,根据实际情况设计属性名.数据类型.及各种完整性约束(primary key.foreign key.not null.unique.check),用数据定义语言实现,然后设计实验 ...

  6. 数据库管理员(Database Administrator,简称DBA)基本知识:

    数据库管理员(Database Administrator,简称DBA)基本知识: 一.数据库基础 1. 数据抽象:物理抽象.概念抽象.视图级抽象,内模式.模式.外模式 2. SQL语言包括数据定义. ...

  7. mysql对库,表,数据类型的操作以及完整性约束

    一丶对库的操作 求救语法: help create database; 1.创建数据库 CREATE DATABASE 数据库名 charset utf8; 2.数据库的命名规则: 可以由字母.数字. ...

  8. easyui datagrid 禁止选中行 EF的增删改查(转载) C# 获取用户IP地址(转载) MVC EF 执行SQL语句(转载) 在EF中执行SQL语句(转载) EF中使用SQL语句或存储过程 .net MVC使用Session验证用户登录 PowerDesigner 参照完整性约束(转载)

    easyui datagrid 禁止选中行   没有找到可以直接禁止的属性,但是找到两个间接禁止的方式. 方式一: //onClickRow: function (rowIndex, rowData) ...

  9. 16Oracle Database 系统权限和对象权限

    Oracle Database 系统权限和对象权限 Oracle中的系统权限和对象权限 DCL 数据控制语言 -- 查看对象的权限 grant / revoke 查看登录用户 Show user 查看 ...

随机推荐

  1. Java学习笔记----容器

    一.Java Collections框架是什么? Java Collections 框架中包括了大量集合接口以及这些接口的实现类和操作它们的算法(如:排序.查找.反转.替换.复制.取最小元素.取最大元 ...

  2. python爬虫【第2篇】【多进程】

    一.多进程 1.fork方法(os模块,适用于Lunix系统) fork方法:调用1次,返回2次.原因:操作系统经当前进程(父进程)复制出一份进程(子进程),两个进程几乎完全相同,fork方法分别在父 ...

  3. 动态JSP的了解

    一.JSP与HTML的根本区别 1..JSP(Java Server Page)页面是动态页,JSP页面是有JSP容器执行该页面的Java代码部分然后实时生成的HTML页面,因而说是动态页面.2..H ...

  4. mysqldump 导出数据表,和数据

    目录 导出数据库表与数据 导出数据表数据 导出多个表数据 只导出数据 只导出创建表的数据 导出数据库表与数据 mysqldump -uroot -p caomall>tmp.sql 导出数据表数 ...

  5. P1196 [NOI2002]银河英雄传说(并查集)

    P1196 [NOI2002]银河英雄传说(并查集) 本题关键 用两个一维数组表示了一个稀疏的二维数组. 这两个一维数组一个表示祖先(就是最前面那个),一个表示距离祖先的距离. 并且还有一个关键点是, ...

  6. .net 接收存储过程的返回值 。。。。

    .net 接收存储过程的返回值 .... Posted on 2009-06-10 20:26 且行且思 阅读(...) 评论(...) 编辑 收藏 例如在向数据库添加新数据时,需要检测是否有重复 本 ...

  7. bzoj1537

    dp+树状数组 一维排序,一维离散化,然后跑lis,其实就是一个二维偏序 #include<bits/stdc++.h> using namespace std; ; int dp[N], ...

  8. 10.11NOIP模拟题(3)

    /* 可以看出,对于一段区间[L,R]如果统计了答案 若a[L]<a[R],那么当右端点往左移时答案不会更优,a[R]>a[L]同理 所以两个指针分别从头尾往中间扫那边小移哪边即可. */ ...

  9. typescript进阶篇之高级类型与条件类型(Readonly, Partial, Pick, Record)

    本文所有东西尽可在 typescript 官网文档寻找,但是深浅不一 高级类型 lib 库中的五个高级类型 以下所有例子皆以 person 为例 interface Person { name: st ...

  10. php可以定义数组的常量吗

    是这样吗?<?php define('BEST_PHPER',array('name'=>'巩文','address'=>'china')); My God,明确告诉你不可以:原因是 ...