向其他用户创建FK时,Oracle表或视图不存在

时间:2018-07-20 14:05:35

标签: oracle

我有3个用户,A,BC。A是dba。我用用户A登录到sqlDeveloper。

我创建了用户B,并添加了表“ B”。“ USERS”;

我创建用户C,并添加表“ C”。“ SESSIONS”;

都很好。

然后我尝试添加这样的FK:

更改表“ C”。“ SESSIONS”添加约束“ FK_SESSIONS”外键(“ LOCKEDBYUSERTOKEN_ID”)引用“ B”。“ USERS”(“ ID”)

出现“表或视图不存在”错误。

我认为,如果用户A是dba,那么它可以在用户和模式之间创建视图和约束。我需要做些什么才能使其正常工作?

2 个答案:

答案 0 :(得分:0)

即使用户A具有DBA权限,在表C.SESSIONS上创建约束时,它也会尝试以用户C的身份读取B.USERS。您需要将B.USERS的选择特权授予用户C。

答案 1 :(得分:0)

基于此链接Insufficient privileges when adding FK constraint (Oracle),您需要向用户添加外键约束。有关更多信息,请参考以下链接: https://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:60443882718790