问题描述
我有模式X,在其中创建了表A,B,C。表A引用了表B和C。现在,按照我当前的要求,我需要将表A移至架构Y。我不想在这里更改表定义。
我正在尝试在架构Y中创建表A,但得到
ORA-01031:特权不足
要提供我已经运行的赠款
GRANT SELECT,INSERT,UPDATE,DELETE ON X.B TO Y;
GRANT SELECT,DELETE ON X.C TO Y
仍然无法在架构Y中创建表A。我得到了
ORA-01031:特权不足
我被困在这里。请帮助我
解决方法
如果表A 引用表B和C(它们现在位于不同的架构中),我想您是在谈论外键约束。如果是这样,那么您授予的特权将无济于事。您需要授予 REFERENCES 特权,即
grant references on b to y;