Tuyên bố miễn trừ trách nhiệm: Tôi là một lập trình viên, không phải là một DBA, vì vậy hãy đồng ý với tôi ...
Tôi có một cái nhìn mà tôi sử dụng để chỉ ánh xạ 2 thực thể với nhau. Tôi phải tham gia giữa một vài bảng khác nhau để có được điều đó:
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);
Trên đây chỉ là cho bối cảnh, đừng lo lắng quá nhiều về điều đó. Điều tôi cần biết là làm thế nào để tạo các trường trong chế độ xem V_SCREENING_GROUP_SITES mới của tôi (SCREENING_GROUP_ID và SITE_ID) hoạt động như các khóa ngoại đối với các bảng SCREENING_GROUP và SITE. Hay nó thậm chí còn quan trọng?
Nếu đó là một cái bàn tôi sẽ làm:
ALTER TABLE V_SCREENING_GROUP_SITES
ADD CONSTRAINT FK_SCREENING_GROUP_ID
FOREIGN KEY (SCREENING_GROUP_ID)
REFERENCES SCREENING_GROUP.SCREENING_GROUP_ID;
...
Nhưng vì đó là một quan điểm rõ ràng là không hoạt động. Tôi không thể tìm thấy cú pháp ALTER VIEW hoạt động để thiết lập FK. Tôi nên làm gì?
(Đây là cơ sở dữ liệu MySQL)