FOREIGN KEYS
verilerinizin tutarlı olduğundan emin olun.
Verimlilik açısından sorguları iyileştirmezler, sadece bazı yanlış sorguların başarısız olmasına neden olurlar.
Böyle bir ilişkiniz varsa:
CREATE TABLE department (id INT NOT NULL)
CREATE TABLE employee (id INT NOT NULL, dept_id INT NOT NULL, FOREIGN KEY (dept_id) REFERENCES department(id))
, O zaman silemezsiniz department
bazı varsa employee
's.
Eğer sağlarsanız ON DELETE CASCADE
için FOREIGN KEY
tanım, referans satırlar başvurulan olanlarla birlikte otomatik olarak silinir.
Kısıtlama olarak, FOREIGN KEY
aslında sorguları biraz yavaşlatır.
Referanslı bir tablodan silinirken veya referans veren bir tabloya eklenirken ekstra kontrol yapılması gerekir.