lully: Foreign Keys in MySQL

Hallo Zusammen

ich habe ein Problem bei MySQL Verknüpfungen
zuerst mal die Ausgangslage:

Tabellen: Felder:

person person_ID int(11)
firstName varchar(20)
email varchar(20)
login varchar(20)
password text
FK_personType int(11)

persontype: personType_ID int(11)
description text

Jetzt möchte ich gerne machen, dass ich alle Personen eines Typs löschen kann.
Dann muss ich doch die Beziehung in der person-tabelle folgendermassen angeben:

Tabelle: person
Feld: FK_personType

person->FK_personType | persontype->personType_ID | ON DELETE: SET NULL

Wenn ich das versuche kommt aber immer folgende Fehlermeldung:

Fehler beim Erzeugen eines Fremdschlüssels für %1$s (überprüfen Sie die Datentypen) : FK_personType

Die beiden Felder FK_personType (in person Tabelle) und ID_personType (in persontype Tabelle) sind aber identisch, und beide int(11).
Ich kann auch sagen ON DELETE - cascade

Kann mir jemand helfen?

Grüsse Lully

  1. Hello Lully,

    person->FK_personType | persontype->personType_ID | ON DELETE: SET NULL

    Wenn ich das versuche kommt aber immer folgende Fehlermeldung:

    Fehler beim Erzeugen eines Fremdschlüssels für %1$s (überprüfen Sie die Datentypen) : FK_personType

    Liegt das vielleicht daran, dass Du die falsche Storage Engine benutzt?
    http://dev.mysql.com/doc/refman/5.1/en/example-foreign-keys.html

    Liebe Grüße aus dem schönen Oberharz

    Tom vom Berg

    --
     ☻_
    /▌
    / \ Nur selber lernen macht schlau
    http://bergpost.annerschbarrich.de
    1. Hi Tom,

      danke für die Antwort.

      Liegt das vielleicht daran, dass Du die falsche Storage Engine benutzt?

      Nein, benutze die innoDB, müsste gehen, nicht?

  2. Okay, Problem gelöst!
    Ich glaube das Problem war dieser Designer vom phpMyAdmin...
    Hab die Beziehungen zuerst alle mit dem erstellt. Aber irgendwie spinnt der ein bischen rum (hab ich jetz auch schon von verschiedenen Leuten gehört).
    Alle Tabellen neu erstellt, Beziehungen von Hand eingegeben - alles funzt.

    Merci und nichts für ungut...

    Grüsse Lully