Thay đổi hành vi toàn vẹn tham chiếu của một khóa
Cho đến giờ, bạn đã triển khai ba ràng buộc khóa ngoại:
professors.university_idtớiuniversities.idaffiliations.organization_idtớiorganizations.idaffiliations.professor_idtớiprofessors.id
Các khóa ngoại này hiện đang có hành vi ON DELETE NO ACTION. Ở đây, bạn sẽ thay đổi hành vi đó cho cột tham chiếu organizations từ affiliations. Nếu một organization bị xóa, tất cả các affiliation của nó (bởi bất kỳ professor nào) cũng phải bị xóa theo.
Việc sửa một ràng buộc khóa không dùng được với ALTER COLUMN. Thay vào đó, bạn cần DROP ràng buộc khóa rồi ADD một ràng buộc mới với hành vi ON DELETE khác.
Tuy nhiên, để xóa ràng buộc, bạn cần biết tên của nó. Thông tin này cũng được lưu trong information_schema.
Bài tập này là một phần của khóa học
Nhập môn Cơ sở dữ liệu quan hệ bằng SQL
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
-- Identify the correct constraint name
SELECT constraint_name, table_name, constraint_type
FROM information_schema.___
WHERE constraint_type = 'FOREIGN KEY';