创建同义词的重复错误

时间:2011-04-08 15:33:53

标签: sql oracle toad synonym ora-00955

我正在尝试在Oracle中为用户创建同义词。

BEGIN
    FOR S IN (SELECT owner, table_name FROM all_tables WHERE owner = 'TABLE_OWNER') LOOP
        EXECUTE IMMEDIATE 'create synonym '||S.table_name||' for '||S.owner||'.'||S.table_name||'';
    END LOOP;
END;

执行时,我在Toad中收到以下错误:

  

第1行出错   ORA-00955:名称已被现有对象使用   ORA-06512:第3行

有什么想法吗?

1 个答案:

答案 0 :(得分:4)

是的,表名和所有者以及同义词名称和所有者不能相同。只能存在一个对象/所有者组合。您必须从表名中更改同义词的所有者或名称。