ORA-30733: cannot specify rowid constraint on scoped ref column
Cause: An attempt was made to specify rowid constraint on a scoped REF column.
Action: Remove the rowid constraint and then retry the operation.
ORA-30733: cannot specify rowid constraint on scoped ref column:
该错误提示用户不能为范围引用列指定ROWID约束。这意味着当定义一个表为REFERENCES子句时,它不能用ROWID约束去范围限制关联表中的父行。
当定义一个外键时,ROWID约束只能用于指向主表中唯一性键的外键引用,而不能用于范围限制的外键引用。系统将返回或抛出此错误,指出ROWID约束不能用于范围限制外键引用。
假设B表引用了A表,A表列c1有唯一性限制,然后当键去要建立一个外键时,A表列c2没有唯一性限制,当使用ROWID约束去范围限制的时候,则会抛出ORA-30733的错误
1.为A表的列c2建立唯一性限制;
2.确认B表的外键对应对A表的列有唯一性限制;
3.使用ROWID约束设置B表的外键。