FOREIGN KEYS
Stellen Sie einfach sicher, dass Ihre Daten konsistent sind.
Sie verbessern Abfragen nicht im Sinne der Effizienz, sie lassen nur einige falsche Abfragen fehlschlagen.
Wenn Sie eine Beziehung wie diese haben:
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))
, dann können Sie eine department
nicht löschen wenn es einen employee
hat 's.
Wenn Sie ON DELETE CASCADE
angeben zum FOREIGN KEYS
Definition werden die referenzierenden Zeilen automatisch zusammen mit den referenzierten gelöscht.
Als Einschränkung FOREIGN KEYS
tatsächlich verlangsamt die Abfragen ein wenig.
Beim Löschen aus einer referenzierten Tabelle oder beim Einfügen in eine referenzierende Tabelle muss eine zusätzliche Überprüfung durchgeführt werden.