我正在尝试访问以下序列:
一个。位于另一个架构中 B.实际上是通过dblink的另一个数据库的同义词。
什么有效:
select schema.sequence@dblink.nextval from dual;
什么不起作用:
select schema.synonym.sequence.nextval from dual;
以上内容会返回'%s:无效标识符'
是否可以在不使用dblink
注释的情况下访问远程序列?
答案 0 :(得分:2)
是的,可以使用远程序列对象的同义词。
数据库1
SQL> conn jay
SQL> create sequence myseq increment by 1;
Sequence created.
数据库2
SQL> conn jay
SQL> create database link dbl_db1 connect to jay identified by jay using 'DB1';
Database link created.
SQL> create synonym myseq_syno for jay.myseq@dbl_db1;
Synonym created.
SQL> select myseq_syno.nextval from dual;
NEXTVAL
----------
1