前端之家收集整理的这篇文章主要介绍了
Oracle添加/删除唯一约束,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_
403_0@
TABLENAME:
添加/
删除约束的表名@H_
502_3@
@H_
403_0@
CONSTRAINTNAME:
添加/
删除的约束名
@H_
403_0@
COLUMNNAME:
添加的约束对应的列名
@H_
403_0@
TABLESPACE:
添加的约束对应的表空间
@H_
502_3@
@H_
403_0@
@H_502_3@
@H_
403_0@
添加唯一约束
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;
/
@H_
502_3@
删除唯一约束
@H_
502_3@
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://www.f2er.com/oracle/210239.html