MySQL 5 - Fremdschlüssel-Constraints unwirksam

Hallo,

ich habe das Problem, dass beim Einfügen von Daten in meine Datenbank die Fremdschlüssel-Constraints komplett ignoriert werden.
Folgendes Beispiel:

CREATE TABLE Beruf
(
 Id int AUTO\_INCREMENT NOT NULL,
 Bezeichnung varchar(100) NOT NULL,
 PRIMARY KEY(Id)
);

CREATE TABLE Person
(
 Id int AUTO\_INCREMENT NOT NULL,
 Name varchar(50) NOT NULL,
 BerufsId int NOT NULL
 PRIMARY KEY (Id),
 FOREIGN KEY(BerufsId) REFERENCES Beruf(Id)
);

In o.g. Beispiel kann ich (trotz leerer Berufs-Tabelle) einfach so eine Person mit beliebiger

BerufsId

einfügen:

INSERT INTO Person VALUES (0,'Peter', 42);

Läuft problemlos durch und wird auch in der DB so gespeichert.

Wäre dankbar für jeden Hinweis!

Viele Grüße
Thomas

Hi,
muss da nicht eine index definition noch hin?

INDEX id\_ind (BerufsId),
FOREIGN KEY(BerufsId) REFERENCES Beruf(Id)

Gruss
Joey

Hallo,

Vielen Dank für die schnelle Antwort!
Bisher habe ich es immer ohne Index-Statement gelernt.
Und meines Wissens hat es auch ohne ein solches funktioniert.
Lasse mich aber gern eines Besseren belehren.

Bisher habe ich aber noch nicht ganz verstanden, wie man den Index richtig definiert. Momentan erhalte ich leider noch Fehlermeldungen :frowning:

Viele Grüße
Thomas