MySql FOREIGN KEY wird nicht erzeugt

ZodiacXP

Erfahrenes Mitglied
Mahlzeit.

Dieser Query jagt durch mySQL 5.4:
SQL:
ALTER TABLE `seo_translation`
ADD FOREIGN KEY `siteID` (`siteID`)
REFERENCES `sites` (`siteID`);

Und wird ohne Fehler ausgeführt. Jedoch werden die Fremdschlüssel nicht eingetragen. MySQL Workbench zeigt sie nicht und diese Anweisung liefert zwei Zeilen mit NULL:

SQL:
SELECT c.referenced_table_name,
       c.referenced_column_name
  FROM information_schema.key_column_usage c
 WHERE c.table_schema   = 'database1'
   AND c.table_name     = 'sites';

oder

SQL:
SELECT c.referenced_table_name,
       c.referenced_column_name
  FROM information_schema.key_column_usage c
 WHERE c.table_schema   = 'database1'
   AND c.table_name     = 'seo_translation';

P.S : Läuft auf MyISAM. Das war das Problem. Es muss InnoDB sein. Grml, InnoDB frisst so viel Speicher!
http://dev.mysql.com/doc/refman/5.0/en/ansi-diff-foreign-keys.html
 
Zuletzt bearbeitet:
Zurück