Hallo,
beim Anlegen folgender Tabellen bekomme ich einen errno 150 (also ein Problem mit dem foreign key):
mit folgenden Anweisungen (PHP-Kram entfernt)
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
»~~~sql
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
kann ich Dein Problem mit MySQL 5.0.51 nicht nachvollziehen.
Die Tabellen lassen sich problemlos anlegen, sowohl mit MySQL-Query-Browser
als auch mit dem mysql-Kommandozeilenclient.
Frage:
Warum verwendest Du für Deine Spalten den Datentyp TEXT statt VARCHAR(geeignete Länge)?
Freundliche Grüße
Vinzenz