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 同义词名; 
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wjxbless

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值