Відмова: Я програміст, а не DBA, тож майте мене ...
У мене є погляд, який я використовую, щоб просто скласти разом два об'єкти. Я повинен зробити з'єднання між декількома різними таблицями, щоб отримати це:
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;
...
Але оскільки це погляд, який, очевидно, не працює. Не вдалося знайти синтаксис ALTER VIEW, який працює для встановлення FK. Що я повинен зробити?
(Це база даних MySQL)