Autor Zpráva
Magnus123
Profil
Ahoj,

používám Adminer a když exportuji databázi, automaticky se tabulky seřazují podle abecedy. Tady nastává problém - když je v tabulce A sloupec, který odkazuje na sloupec tabulky B, import skončí chybou, protože tabulka B ještě neexistuje.

Mohl by mi někdo poradit, co s tím? Ručně se mi to tam fakt psát nechce.

Jen dodám, že při exportu používám u tabulek DROP + CREATE.
Kajman
Profil
V tom exportovaném souboru dává adminer v případě mysql
SET foreign_key_checks = 0;
Máte to tam? Případně jakou databázi a jakou verzi používáte?
Magnus123
Profil
Kajman:
Omlouvám se, chyba není v tom, v čem jsem myslel (mimochodem díky, alespoň už vím, k čemu to foreign_key_checks slouží).
Zjistil jsem, že se mi nedokáže vytvořit pouze jedna tabulka, a to kvůli svému názvu. Zkusil jsem pro test vyhodit všechny cizí klíče, které na danou tabulku směřovaly, ale chyba je tam stále.
Když tabulku jakkoliv přejmenuji, vše proběhne v pořádku.

Nakonec mi pomohlo smazat všechny tabulky a importovat znovu. Nenapadá vás, v čem mohl být problém? Hlásilo mi to tuto chybu: Error 1215: Cannot add foreign key constraint
Kajman
Profil
Možná bude ještě onen problém podrobněji popsán ve výstupu
SHOW ENGINE INNODB STATUS
v sekci LATEST FOREIGN KEY ERROR.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: