Oracle添加删除唯一约束

    xiaoxiao2021-03-25  111

    TABLENAME:添加/删除约束的表名

    CONSTRAINTNAME:添加/删除的约束名

    COLUMNNAME:添加的约束对应的列名

    TABLESPACE:添加的约束对应的表空间

    添加唯一约束

    declare num number; begin --从系统表中查询表是否存在唯一约束 select count(1) into num from user_constraints t where t.table_name = upper('TABLENAME') and t.constraint_type = 'U' and t.constraint_name = 'CONSTRAINTNAME'; --如果不存在,使用快速执行语句添加唯一约束 if num = 0 then execute immediate 'alter table TABLENAME add constraint CONSTRAINTNAME unique (COLUMNNAME) using index tablespace TABLESPACE'; end if; end; / 删除唯一约束 declare num number; begin --从系统表中查询表是否存在唯一约束 select count(1) into num from user_constraints t where t.table_name = upper('TABLENAME') and t.constraint_type = 'U' and t.constraint_name = 'CONSTRAINTNAME'; --如果存在,使用快速执行语句删除唯一约束 if num = 1 then execute immediate 'alter table TABLENAME drop constraint CONSTRAINTNAME'; end if; end; /
    转载请注明原文地址: https://ju.6miu.com/read-9166.html

    最新回复(0)