0

我正在使用以下语法在 oracle 10G 中创建表的私有同义词:

create private synonym <synonym name>
for <schema name>.<table name>;

我收到此错误:

ERROR at line 1:
ORA-00905: missing keyword

请用正确的语法指导我。我做了研究,但我发现只有公共同义词的语法。

4

2 回答 2

3

只需省略private关键字。

文档中:

CREATE [ OR REPLACE ] [ PUBLIC ] SYNONYM
   [ schema. ]synonym 
   FOR [ schema. ]object [ @ dblink ] ;

PUBLIC
如果省略此子句,则同义词是私有的,并且只能在其模式中访问。私有同义词名称在其架构中必须是唯一的。

于 2012-09-12T08:48:04.240 回答
2

这个对我有用:

create or replace synonym SCHEMA1.TABLE for SCHEMA2.TABLE;

或为您的架构

create or replace synonym TABLE for SCHEMA2.TABLE;

where SCHEMA1.TABLEorTABLE是同义词。

这里有很多例子。

于 2012-09-12T08:48:20.450 回答