2

我有 3 个 Oracle 用户 A、B、C,想使用 B(作为中间人)将表从 C 导入到 A。连接到 B 时,我可以运行“create table A.T1 as select * from T1@C” . 但是,当我将 sql 语句放入 B 创建/拥有的过程中时,我不断收到“ORA-01031:权限不足”。作为 sysdba,我已将所有权利 (dba) 授予 B。那么我在这里缺少什么?谢谢你。

4

2 回答 2

5

In an definer's rights stored procedure (the default), the only privileges that are available are those that are granted directly to the user, not those that have been granted through a role (like DBA). So Pablo is correct that B would need to have the CREATE ANY TABLE privilege as a direct grant.

于 2010-11-19T20:38:34.530 回答
2

您是否向用户授予了以下权限B

sql> grant create any table to b;
于 2010-11-19T20:27:52.333 回答