08Oracle Database 完整性约束
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 完整性约束的更多相关文章
- python全栈开发day54-mysql库操作、表操作、数据类型、完整性约束
一.昨日内容回顾 1.mysql的安装 1).解压文件 添加环境变量bin 2).初始化mysql生成数据data文件夹: mysqld --initialize-insecure 3).mysqld ...
- PowerDesigner 参照完整性约束(转载)
PowerDesigner 参照完整性约束: 限制(Restrict):不允许进行修改或删除操作.若修改或删除主表的主键时,如果子表中存在子记录,系统将产生一个错误提示.这是缺省的参照完整性设置. 置 ...
- python 全栈开发,Day61(库的操作,表的操作,数据类型,数据类型(2),完整性约束)
昨日内容回顾 一.回顾 定义:mysql就是一个基于socket编写的C / S架构的软件 包含: ---服务端软件 - socket服务端 - 本地文件操作 - 解析指令(mysql语句) ---客 ...
- mysql三-3:完整性约束
一.完整性约束介绍 约束条件与数据类型的宽度一样,都是可选参数 作用:用于保证数据的完整性和一致性主要分为: PRIMARY KEY (PK) 标识该字段为该表的主键,可以唯一的标识记录 FOREIG ...
- 数据库基本表创建 完整性约束 foreign Key
理解以下几张表的内容,根据实际情况设计属性名.数据类型.及各种完整性约束(primary key.foreign key.not null.unique.check),用数据定义语言实现,然后设计实验 ...
- 数据库管理员(Database Administrator,简称DBA)基本知识:
数据库管理员(Database Administrator,简称DBA)基本知识: 一.数据库基础 1. 数据抽象:物理抽象.概念抽象.视图级抽象,内模式.模式.外模式 2. SQL语言包括数据定义. ...
- mysql对库,表,数据类型的操作以及完整性约束
一丶对库的操作 求救语法: help create database; 1.创建数据库 CREATE DATABASE 数据库名 charset utf8; 2.数据库的命名规则: 可以由字母.数字. ...
- easyui datagrid 禁止选中行 EF的增删改查(转载) C# 获取用户IP地址(转载) MVC EF 执行SQL语句(转载) 在EF中执行SQL语句(转载) EF中使用SQL语句或存储过程 .net MVC使用Session验证用户登录 PowerDesigner 参照完整性约束(转载)
easyui datagrid 禁止选中行 没有找到可以直接禁止的属性,但是找到两个间接禁止的方式. 方式一: //onClickRow: function (rowIndex, rowData) ...
- 16Oracle Database 系统权限和对象权限
Oracle Database 系统权限和对象权限 Oracle中的系统权限和对象权限 DCL 数据控制语言 -- 查看对象的权限 grant / revoke 查看登录用户 Show user 查看 ...
随机推荐
- busybox的使用
1 将busybox设置为静态链接,放在文件系统中使用 make menuconfig的时候,Busybox Settings --> Build Options --> Build Bu ...
- 浏览器对MP4视频 帧宽度 高度的兼容性
传入oss后 或者 本地 拖动到 浏览器 谷歌 都不能播放 Edge 可以播放 但 Edge不支持 本地拖入 播放 搜狗浏览器 同谷歌
- H264--1--编码原理以及I帧B帧P帧[4]
---------------------- 前言 ----------------------- H264是新一代的编码标准,以高压缩高质量和支持多种网络的流媒体传输著称,在编码方面,我理解的他的理 ...
- [Android 编译(一)] Ubuntu 16.04 LTS 成功编译 Android 6.0 源码教程
本文转载自:[Android 编译(一)] Ubuntu 16.04 LTS 成功编译 Android 6.0 源码教程 1 前言 经过3天奋战,终于在Ubuntu 16.04上把Android 6. ...
- P1196 [NOI2002]银河英雄传说(并查集)
P1196 [NOI2002]银河英雄传说(并查集) 本题关键 用两个一维数组表示了一个稀疏的二维数组. 这两个一维数组一个表示祖先(就是最前面那个),一个表示距离祖先的距离. 并且还有一个关键点是, ...
- 用户能够在下次登录系统时被重新配置---或win10早期更新不成功的bug就需要删除多余的登陆用户
有时候我们希望删除本地计算机上的一位用户,或者期待一位用户能够在下次登录系统时被重新配置.但是仅删除%userprofile%目录是不够的,因为一个登录名会对应一个SSID,这个SSID还保留在注册表 ...
- mysql数据库中的十进位是什么意思?
一般在用小数的时候才有用,比如类型你设置了double,十进位你设为2,那么你可以放0.22的值,但是放0.222的值它会自动四舍五入为0.22,相当于小数位数吧
- Java properties配置文件
Java中的配置文件常为properties文件,格式为文本文件,文件内容的格式是“键=值”格式.注释信息使用“#”来注释. Properties类的常用方法 String getProperty(S ...
- contesthunter 6201 走廊泼水节【克鲁斯卡尔+并查集】
很有意思的题,所以还是截lyddalao的课件 #include<iostream> #include<cstdio> #include<algorithm> us ...
- codeforces 37 E. Trial for Chief【spfa】
想象成一层一层的染,所以相邻的两个格子连边,边权同色为0异色为1,然后答案就是某个格子到距离它最远得黑格子的最短距离的最小值 注意特判掉不需要染色的情况 #include<iostream> ...