当我执行以下操作时:
INSERT ALL INTO table@database_link(columnName) VALUES (columnValue)
SELECT columnValue FROM localTable;我犯了个错误
SQL : ORA-02021: DDL操作不允许在远程数据库02021上进行。00000 -“远程数据库上不允许DDL操作”*原因:尝试在远程数据库上使用DDL操作。例如,"CREATE tablename@remotedbname .“。*操作:要更改远程数据库结构,必须使用适当的权限连接到远程数据库。
注意,当我做一个常规的(而不是插入所有的).插入在数据库链接上工作。(补助金有效)。
这两个表上也没有触发器。
我明确地需要INSERT ALL INTO,以便能够插入多个表。
是否不允许将所有插入操作插入数据库链接表?
发布于 2012-01-18 21:38:55
根据Oracle SQL引用的说法,这个消息有点误导人,但无论如何
不能对远程表执行多表插入。
发布于 2012-01-18 21:34:29
是否不允许将所有插入操作插入数据库链接表?
不幸的是没有。请注意此列表中的第二项:
对多表插入的限制 只能在表上执行多表插入,而不能对视图或物化视图执行多表插入。 不能对远程表执行多表插入。 在执行多表插入时,不能指定表集合表达式。 在多表插入中,所有insert_into_clauses都不能组合指定超过999个目标列。 在实应用程序群集环境中,多表插入不并行化,或者任何目标表都是组织索引的,或者任何目标表上定义了位图索引。 多表insert语句不支持计划稳定性。 多表insert语句的子查询不能使用序列。
来源:Oracle 9i文档
https://stackoverflow.com/questions/8917678
复制相似问题