#1 2011-11-09 22:13:51

VaclavMacurek
Člen
Registrován: 2009-12-09
Příspěvky: 124

Re: [MySQL/InnoDB] cizí klíče

Při programování Kasandry 2 jsem se dostal do situace, kdy potřebuji cizí klíče (ony by snad až tak nutné nebyly, ale s nimi to bude výrazně jednodušší).

Na localhost používám XAMPP 1.7.7 (PHP 5.3.8, MySQL 5.5.16). Typ InnoDB mám povolený - a všechny tabulky (je jich 12, z toho nutně typ InnoDB potřebuje 7) jsou toho typu, tedy InnoDB (alespoň mi to PMA tvrdí).

Všechny pokusy o vytvoření tabulek již s cizími klíči - nebo dodatečné dodání těchto klíčů však končí chybou. Použil jsem příkaz SHOW ENGINE INNODB STATUS a v výstupu bylo:

LATEST FOREIGN KEY ERROR
------------------------
111109 18:49:15 Error in foreign key constraint of table cms@002dkasandra2/sekce_obsah:
FOREIGN KEY Znacka (Znacka) REFERENCES Sekce_ZakladniInfo (Znacka) ON UPDATE NO ACTION ON DELETE CASCADE ) ENGINE=InnoDB CHARACTER SET `latin2` COLLATE `latin2_czech_cs`:

Cannot resolve table name close to:

(Znacka) ON UPDATE NO ACTION ON DELETE CASCADE ) ENGINE=InnoDB CHARACTER SET `latin2` COLLATE `latin2_czech_cs`

... a když jsem ty cizí klíče zkusil nastavit ručně v PMA, hodil hlášku

Chyba při vytváření cizího klíče na Znacka (zkotrolujte typ pole)

V prvním případě zcela nechápu, co se podělalo - a v druhém, co má na mysli tím polem.

Má s tímto někdo zkušenosti? Mohl by mi někdo (konečně) poradit, co dělám blbě. Už jsem totiž tento problém začal řešit na foru zive.cz, prohledal jsem i internet, ale zatím bez úspěchu.

Offline

#2 2011-11-10 17:43:59

JF
Endora rádce
Místo: ....nice u Plzně
Registrován: 2010-06-22
Příspěvky: 11,707

Re: [MySQL/InnoDB] cizí klíče

Toto fórum je určené pre problémy na serveroch endora.cz a nie na vlastnom localhoste.

LOCK


Ján Fačkovec - Endora.cz by Webglobe
Email, Web, Webadmin, Webmail, Nápověda, Ceník

Offline

Zápatí

Založeno na FluxBB | CZ a SK