1、创建名称为 LZZG 的 DATABASE LINK,计划在对应的DBLINK下面创建表AC01备份表,执行以下SQL报错,提示 ORA-02021:不允许对远程数据库进行DDL操作
CREATE TABLE AC01_BAK@LZZG AS SELECT * FROM AC01@LZZG;
2、解决方案
BEGIN
DBMS_UTILITY.EXEC_DDL_STATEMENT@此处是要操作的DBLINK('
此处是DDL操作语句,最外层用单引号,如果DDL操作语句中包含引号,一个单引号要替换为两个单引号
');
END;
--在@LZZG上创建AC01_BAK表
BEGIN
DBMS_UTILITY.EXEC_DDL_STATEMENT@LZZG('
CREATE TABLE AC01_BAK
AS
SELECT * FROM AC01
');
END;
--在@LZZG上删除AC01_BAK表
BEGIN
DBMS_UTILITY.EXEC_DDL_STATEMENT@LZZG('DROP TABLE AC01_BAK');
END;