SQL foreign key im create table statement

DichterNebel

Cadet 4th Year
Registriert
Apr. 2009
Beiträge
66
Hi,

ich will,aus übungszwecken, per workbench konsle eine db erstellen.
Und irgendwie gelingt es mir nicht foreign zu definieren.
Zu erst habe ich probiert, den fk mit ins create statement zu packen, das ging nicht, darauf hin habe ich google angeworfen und folgendens gefunden :
Zu dem Zeitpunkt, an dem ein FOREIGN KEY festgelegt wird, muss die Tabelle, auf die verwiesen wird, bereits definiert sein. Der letzte Weg ist deshalb in der Regel am sichersten: zuerst werden alle Tabellen bestimmt, danach alle FOREIGN KEYs als Verknüpfung.
quelle: sqlwiki

Also habe ich die tabellen zuerst erstellte und dann in der gleichen query per alter table den fk definiert.
Aber auch das funtz nicht.
Jemand ne idee ?

hier der code:

create table if not exists eigentuemer (
eigentumer_id int not null auto_increment,
adress_id int,
name char,
primary key (eigentumer_id)
) engine=innodb;


create table if not exists haus (
ferienhaus_id int not null auto_increment,
eigentuemer_id int,
adress_id int,
anzahlschlafzimmer int not null,
primary key (ferienhaus_id)
) engine=innodb;

alter table haus
add
foreign key (eigentuemer_id) references eigentuemer(eigentuemer_id)
;
 
Zurück
Oben