Moin moin. Ich bin am Verzweifeln... beim Anlegen folgender Tabellen bekomme ich einen errno 150 (also ein Problem mit dem foreign key):
//Tabellenstruktur für Tabelle land
mysql_query("CREATE TABLE IF NOT EXISTS land (
Land\_ID int(11) NOT NULL auto_increment,
Land\_Name text NOT NULL,
Landessprache text,
Waehrung text,
PRIMARY KEY (Land\_ID)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_unicode_ci AUTO_INCREMENT=8");
//Tabellenstruktur für Tabelle region
mysql_query("CREATE TABLE IF NOT EXISTS region (
Region\_ID int(11) NOT NULL auto_increment,
Region\_Name text NOT NULL,
Region\_Beschreibung text,
Region\_Sehenswuerdigkeiten text,
Land\_ID int(11) NOT NULL,
PRIMARY KEY (Region\_ID),
INDEX (Land\_ID),
CONSTRAINT fk\_Land FOREIGN KEY (Land\_ID) REFERENCES Land (Land\_ID) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_unicode_ci AUTO_INCREMENT=8");
Ich hab schon ne Stunde gegooglet und einige mögliche Lösungen gefunden: Sicherstellen, dass die Datentypen der beiden verknüpften Spalten übereinstimmen (stimmt, beides int(11)). SIcherstellen, dass der gleiche Character Set vorliegt (beides utf-8). Sicherstellen, dass das Fremdschlüssel-Feld indiziert ist (ist es). Mir fällt jetzt nichts mehr ein, woran das liegen könnte... kann mir hier jemand helfen? Gruß, Felix