Oracle表名更改

时间:2013-09-11 22:17:50

标签: oracle ddl dml

如果我必须重命名一个具有同义词,分区,读取权限给其他用户等的表。

什么是最好的方法来重命名而不打扰所有这些?

快速谷歌搜索引导我

ALTER TABLE OLD_NAME RENAME TO NEW_NAME

如果这是正确的方法,请告诉我

感谢和安培;问候

2 个答案:

答案 0 :(得分:1)

重命名表时,授权,分区,索引,触发器和约束不受影响。

但是,对表的引用不会自动更新 - 因此您需要修复任何同义词,以及引用表的任何代码(例如视图,存储过程,包和其他表中的触发器)直接

http://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_3001.htm#sthref5046

答案 1 :(得分:1)

是的,这是在oracle中重命名表的正确方法,或者您可以使用

RENAME old_name TO new_name;

但它会使依赖于此表的所有对象无效。