【发布时间】:2010-12-26 17:12:34
【问题描述】:
我在 Toad 中运行了一个数据复制功能,该功能禁用了所有约束,然后失败了。
这给我留下了一堆禁用的约束。其中大多数我已经能够成功启用,但闪回的那些正在给我的存储过程适合。
问题:
1) 是否有必要重新启用闪回表上的约束?我的假设是,如果未启用它们并使用闪回,则在恢复表时它们将被禁用,所以是的,它们应该重新启用。
2) 我得到的错误是 ORA-01735: Invalid alter table option。
EXECUTE IMMEDIATE
'ALTER TABLE'||' '||l_table_name||' '||'ENABLE CONSTRAINT'||'
'||l_Constraint_name;
我的假设是表名中的==$0 引起了问题,我需要用双引号将其括起来。但是,我这样做的尝试:
EXECUTE IMMEDIATE
'ALTER TABLE'||' ""'||l_table_name||'"" '||'ENABLE CONSTRAINT'||'
'||l_Constraint_name;
也失败了。什么是正确的语法?或者我是否在错误地找出错误的实际情况?
【问题讨论】:
-
语法似乎是正确的。你是如何执行的?
标签: oracle plsql oracle10g ora-01735