Foreign Constraints (MySQL 5.0)

Mik3e

Erfahrenes Mitglied
Hi,

Wir starten gerade mit der Entwicklung eines neuen Projekts, dass schon auf MySQL 5.0 aufsetzt. Nachdem es hier auch foreign constraints gibt, wollte ich mal wissen, ob schon jemand Erfahrung damit hat bzw. auf was man achten sollte.

Ein aktuelles (vereinfachtes) Beispiel, wo ich foreign constraints einsetzen möchte:
pk_* = Attribut mit Primary Key
fk_* = Attribut mit Foreign Key (Index)

Tabelle "tbl_produktkategorie":
pk_produktkategorie_id
----------------------------------
1
2

Tabelle "tbl_kategorie_bezeichnung"
fk_produktkategorie_id | language | name
----------------------------------------------------------------------
1 | de | "Kategorie 1"
1 | en | "Category 2"
2 | de | "Kategorie 2"
2 | en | "Category 2"

Hier bieten sich Foreign Constraints geradezu an (vor allem bei DELETE).
Ich habe nun in der 2. Tabelle (tbl_kategorie_bezeichnung) folgende Beziehung definiert:
Code:
fk_produktkategorie_id=tbl_produktkategorie->pk_produktkategorie_id
ON DELETE: CASCADE
ON UPDATE: CASCADE
Funktioniert soweit auch gut. Lösche ich z.B. den Datensatz "1" aus der Tabelle "tbl_produktkategorie" dann werden auch automatisch die ersten beiden Datensätze aus der Tabelle "tbl_kategorie_bezeichnung" gelöscht.

Nachdem ich aber nun zum ersten Mal mit Foreign Constraints unter MySQL arbeite, wüßte ich gerne, welche "Fußangeln" es gibt und bei wo man besonders vorsichtig sein sollte...

Danke & Ciao,
Mike
 
Zurück