Section Artikel
FOREIGN KEY
Constraint FOREIGN KEY adalah kunci yang digunakan untuk menghubungkan dua tabel bersama-sama.
FOREIGN KEY adalah field (atau kumpulan field) dalam satu tabel yang merujuk ke PRIMARY KEY di tabel lain.
SQL FOREIGN KEY di CREATE TABLE
SQL berikut membuat constraint FOREIGN KEY di kolom “PersonID” ketika tabel “Order” dibuat:
MySQL:
CREATE TABLE Orders ( OrderID int NOT NULL, NomorPesanan int NOT NULL, PersonID int, PRIMARY KEY (OrderID), FOREIGN KEY (PersonID) REFERENCES Persons(PersonID) );
SQL Server / Oracle / MS Access:
CREATE TABLE Orders ( OrderID int NOT NULL PRIMARY KEY, NomorPesanan int NOT NULL, PersonID int FOREIGN KEY REFERENCES Persons(PersonID) );
Untuk mengizinkan penamaan constraint FOREIGN KEY dan untuk menentukan constraint FOREIGN KEY pada beberapa kolom, gunakan sintaks SQL berikut:
SQL Server / Oracle / MS Access:
CREATE TABLE Orders ( OrderID int NOT NULL, NomorPesanan int NOT NULL, PersonID int, PRIMARY KEY (OrderID), CONSTRAINT FK_PersonOrder FOREIGN KEY (PersonID) REFERENCES Persons(PersonID) );
SQL FOREIGN KEY di ALTER TABLE
Untuk membuat constraint FOREIGN KEY pada kolom “PersonID” ketika tabel “Orders” sudah dibuat, gunakan SQL berikut ini:
SQL Server / Oracle / MS Access:
ALTER TABLE Orders ADD FOREIGN KEY (PersonID) REFERENCES Persons(PersonID);
Untuk mengizinkan penamaan constraint FOREIGN KEY, dan untuk menentukan constraint FOREIGN KEY pada beberapa kolom, gunakan sintaks SQL berikut:
SQL Server / Oracle / MS Access:
ALTER TABLE Orders ADD CONSTRAINT FK_PersonOrder FOREIGN KEY (PersonID) REFERENCES Persons(PersonID);
SQL FOREIGN KEY di DROP TABLE
Untuk menghapus constraint FOREIGN KEY, gunakan SQL berikut ini:
MySQL:
ALTER TABLE Orders DROP FOREIGN KEY FK_PersonOrder;
SQL Server / Oracle / MS Access:
ALTER TABLE Orders DROP CONSTRAINT FK_PersonOrder;