数据库中如何批量禁用和启用外键、触发器
这篇文章主要为大家展示了“数据库中如何批量禁用和启用外键、触发器”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“数据库中如何批量禁用和启用外键、触发器”这篇文章吧。
创新互联是一家专注于成都做网站、网站建设与策划设计,新沂网站建设哪家好?创新互联做网站,专注于网站建设十余年,网设计领域的专业建站公司;建站业务涵盖:新沂等地区。新沂做网站价格咨询:18980820575
SET SERVEROUTPUT ON SIZE 100000
BEGIN
for c in (select 'alter table "'||t.owner||'".'||t.table_name ||' disable constraint '||t.constraint_name as v_sql
from dba_constraints t where t.constraint_type = 'R' and owner in ('CCOD','RECORD','UCDS')
) loop
DBMS_OUTPUT.PUT_LINE(C.V_SQL);
begin
EXECUTE IMMEDIATE c.v_sql;
exception when others then
dbms_output.put_line(sqlerrm);
end;
end loop;
for c in (select 'alter trigger "' || t.owner || '".' || t.trigger_name ||
' disable' as v_sql
from dba_triggers t
where owner in ('CCOD','RECORD','UCDS')) loop
dbms_output.put_line(c.v_sql);
begin
execute immediate c.v_sql;
exception when others then
dbms_output.put_line(sqlerrm);
end;
end loop;
end;
/
--启用脚本
SET SERVEROUTPUT ON SIZE 100000
BEGIN
for c in (select 'alter table "'||t.owner||'".'||t.table_name ||' enable constraint '||t.constraint_name as v_sql
from dba_constraints t where t.constraint_type = 'R' and owner in ('CCOD','RECORD','UCDS')) loop
DBMS_OUTPUT.PUT_LINE(C.V_SQL);
begin
EXECUTE IMMEDIATE c.v_sql;
exception when others then
dbms_output.put_line(sqlerrm);
end;
end loop;
for c in (select 'alter trigger "' || t.owner || '".' || t.trigger_name ||
' enable' as v_sql
from dba_triggers t
where owner in ('CCOD','RECORD','UCDS')) loop
dbms_output.put_line(c.v_sql);
begin
execute immediate c.v_sql;
exception when others then
dbms_output.put_line(sqlerrm);
end;
end loop;
end;
/
以上是“数据库中如何批量禁用和启用外键、触发器”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!
分享名称:数据库中如何批量禁用和启用外键、触发器
地址分享:http://scjbc.cn/article/gojisp.html