Oracle复习约束以及视图
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle复习约束以及视图相关的知识,希望对你有一定的参考价值。
Oracle复习(四)
约束 视图
约束
- 约束:对表的强制规定
- 主键约束:表示唯一的 ,不能为空
- 唯一约束:表示唯一的
- 非空约束:表示非空
- 检查约束:检查一个列的内容是否合法
- 外键约束:外键约束定义在具有父子关系的子表中,外键约束使得子表中的列对应父表的主键列,用以维护数据库的完整性。
* 建立主键约束:
列级别约束:
(1)create table person(
pid number(5) primary key,
pname varchar2(20),
page varchar2(3)
psex varchar2(4)
);
表级别约束:
(2)CONSTRAINT person_pid_pk PRIMARYKEY(pid);
* 建立唯一约束:
列级别约束:
在行尾添加 unique
表级别约束:
CONSTRAINT person_pname_uk UNIQUE(pname);
* 建立非空约束:
只有列级别约束
在行尾添加 not null
* 建立检查约束:
列级别约束:
在行尾添加 check(page between 0 and 150), check(psex in(男, 女)),
表级别约束:
CONSTRAINT person_page_ck check(page between 0 and 150);
* 建立外键约束:
列级别约束:
create table employee(
empno number(5),
ename varchar2(10),
deptno number(5) reference department(deptno)
) ;、
表级别约束:
CONSTRAINT employee_deptno_fk foreign key(deptno) references department(deptno);
* 查看约束:
select *
from user_constraints
where table_name = emp
select constraint ,constraint _type,table_name
from user_constraints
where table_name = emp
* 追加约束:
ALTER TABLE 表名 ADD(CONSTRAINT的内容粘贴过来即可);
* 删除约束:
ALTER TABLE 表名 drop 表级别约束的名字 ;
ALTER TABLE 表名 drop primary key即可 ;
* 约束的禁用与启动:
ALTERTABLE 表名 DISABLE(禁用) CONSTRAINT 约束名;
ALTERTABLE 表名 ENABLE(启用) CONSTRAINT 约束名;
视图:
- 视图: 获取一个或者多个表中的数据集合。
* 创建视图:
CREATE VIEW 视图名 AS SELECT 语句.... (必须在sys账号下)
create [or replace(若视图存在则修改视图)]
[force(不管有没有表 都会传女鬼剑视图,表不存在 视图为空) unforce(只有表存在时 才会创建视图)]
view 视图名
as select 语句
[(with check option)/ (with read only) 约束 ];
注意: 可以在select语句中起别名,视图操作和表相同
* 删除视图:
drop view 视图名;
- 同义词:创建同义词可以简化对象访问(对象的另一个名字)。
- 同义词能够:
- 使用户更加方便的引用另一个用户的表
- 使对象名字变短
* 创建同义词:
CREATE SYNONYM 同义词名 FOR scott.emp;
* 删除同义词:
DROP SYNONYM 同义词名;
以上是关于Oracle复习约束以及视图的主要内容,如果未能解决你的问题,请参考以下文章