sql – 引用Oracle中的视图的外键

我试图用外键引用视图,但是我收到这个错误

错误:ORA-02270:此列列表中没有匹配的唯一或主键”

但是,我已经在此视图中创建了一个主键,并在TOAD的“约束”选项卡中进行了验证.

这是我试图创建的表:

CREATE TABLE QUESTION
(   
    QUESTION_ID             INTEGER not null,CREATED_USER_ID         INTEGER not null,CONSTRAINT PK_QUESTION  PRIMARY KEY (QUESTION_ID),CONSTRAINT FK_USER
        FOREIGN KEY (CREATED_USER_ID)
        REFERENCES SOME_VIEW(VIEW_ID)
);

SOME_VIEW是基于另一个视图的视图,它指向另一个模式中的employee表.

解决方法

无论如何创建外键,看来实际上并不是最好的办法.

数据库视图旨在让用户舒适地查询一些他需要的数据,同时作为安全屏障,隐藏所有数据库结构,包括表,表中的数据约束,以及表交叉引用.

所以,对我而言,一个好的做法是参考一个你现在的表,尽管它居住在其他方案.

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...