免责声明:我是程序员,而不是DBA,所以请耐心等待...
我有一种观点,我只是将2个实体映射在一起。我必须在几个不同的表之间进行联接才能得到:
CREATE OR REPLACE VIEW V_SCREENING_GROUP_SITES AS (
SELECT SG.SCREENING_GROUP_ID, V.SITE_ID
FROM SCREENING_GROUP SG, VISIT V, VISIT_DATE VD
WHERE VD.VISIT_ID = V.VISIT_ID
AND V.SCREENING_GROUP_ID = SG.SCREENING_GROUP_ID);
以上仅是上下文,请不要为此担心太多。我需要知道的是如何使新的V_SCREENING_GROUP_SITES视图中的字段(SCREENING_GROUP_ID和SITE_ID)充当SCREENING_GROUP和SITE表的外键。还是有关系吗?
如果是一张桌子,我会做:
ALTER TABLE V_SCREENING_GROUP_SITES
ADD CONSTRAINT FK_SCREENING_GROUP_ID
FOREIGN KEY (SCREENING_GROUP_ID)
REFERENCES SCREENING_GROUP.SCREENING_GROUP_ID;
...
但是,由于这种观点显然行不通。我找不到可用于设置FK的ALTER VIEW语法。我该怎么办?
(这是一个MySQL数据库)