ORA-02021解决方法--dblink操作ddl

来源:互联网 发布:江恩晚年一贫如洗 知乎 编辑:程序博客网 时间:2024/04/30 16:39
如果我想在A库上操作,把A库上的dba_objects弄到B库上。
SQL> create table test@dblink_to_B as select * from dba_objects;
create table test@dblink_to_B as select * from dba_objects
                 *
第 1 行出现错误:
ORA-02021: 不允许对远程数据库进行 DDL 操作

要想完成上面的需求,这样做
SQL> exec dbms_utility.EXEC_DDL_STATEMENT@db_link_developer('create table test as select * from dba_objects@dblink_to_A');

要想在A库上操作,删除B库上的test

SQL> exec dbms_utility.EXEC_DDL_STATEMENT@dblink_to_B('drop table test');


当然你可以在远程数据库上建立一个存储过程,调用存储解决,不过没有这个方法简单。

0 0
原创粉丝点击