数据完整性的管理

     
  alter table table_name drop constraint constraint_name;----drop 约束

  alter table table_name add constraint constraint_name primary key(column_name1,column_name2);-----创建主键

  alter table table_name add constraint constraint_name unique(column_name1,column_name2);---创建唯一约束

  /*创建外键约束*/ 
  alter table table_name add constraint constraint_name foreign key(column_name1) references table_name(column_name1);

  /*不效验老数据,只约束新的数据[enable/disable:约束/不约束新数据;novalidate/validate:不对/对老数据进行验证]*/ 
  alter table table_name add constraint constraint_name check(column_name like 'B%') enable/disable novalidate/validate;

  /*修改约束条件,延时验证,commit时验证*/ 
  alter table table_name modify constraint constraint_name initially deferred;

  /*修改约束条件,立即验证*/ 
  alter table table_name modify constraint constraint_name initially immediate;

  alter session set constraints=deferred/immediate;

  /*drop一个有外键的主键表,带cascade constraints参数级联删除*/ 
  drop table table_name cascade constraints;

  /*当truncate外键表时,先将外键设为无效,再truncate;*/ 
  truncate table table_name;

  /*设约束条件无效*/ 
  alter table table_name disable constraint constraint_name;

  alter table table_name enable novalidate constraint constraint_name;

  /*将无效约束的数据行放入exception的表中,此表记录了违反数据约束的行的行号;在此之前,要先建exceptions表*/ 
  alter table table_name add constraint constraint_name check(column_name >15) enable validate exceptions into exceptions;

  /*运行创建exceptions表的脚本*/ 
  start $ORACLE_HOME/rdbms/admin/utlexcpt.sql;

  /*获取约束条件信息的表或视图*/ 
  select * from user_constraints/dba_constraints/dba_cons_columns;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值