Một FOREIGN KEY là một khóa được sử dụng để liên kết hai bảng với nhau. Đôi khi, nó còn được gọi như là một khóa tham chiếu.
FOREIGN KEY là một cột hoặc một tổ hợp các cột có các giá trị so khớp với một PRIMARY KEY trong một bảng khác.
Mối quan hệ giữa 2 bảng so khớp là PRIMARY KEY ở một trong hai bảng với một FOREIGN KEY trong bảng thứ hai.
Nếu một bảng có một PRIMARY KEY đã được định nghĩa trên bất kỳ trường nào, thì bạn không thể có hai bản ghi có cùng giá trị trong các trường đó.
Ví dụ FOREIGN KEY
Giả sử cấu trúc của hai bảng như sau:
Bảng SINHVIEN:
CREATE TABLE SINHVIEN( ID INT NOT NULL, TEN VARCHAR (20) NOT NULL, TUOI INT NOT NULL, KHOAHOC CHAR (25) , HOCPHI DECIMAL (18, 2), PRIMARY KEY (ID) );
Bảng MUONSACH:
CREATE TABLE MUONSACH ( ID INT NOT NULL, NGAY DATETIME, SINHVIEN_ID INT references SINHVIEN(ID), SOTIEN double, PRIMARY KEY (ID) );
Nếu bảng MUONSACH đã được tạo, và FOREIGN KEY vẫn chưa được thiết lập, bạn sử dụng cú pháp sau để xác định một FOREIGN KEY.
ALTER TABLE MUONSACH ADD FOREIGN KEY (SINHVIEN_ID) REFERENCES SINHVIEN (ID);
Xóa một ràng buộc FOREIGN KEY trong SQL
Để xóa một ràng buộc FOREIGN KEY, bạn sử dụng cú pháp SQL sau:
ALTER TABLE MUONSACH DROP FOREIGN KEY;