Ahoj,

vzdy jsem to resil tak, ze cilova DB byla nova (prazdna), takze jsem si nejdriv vytvoril tabulky s indexama (nebo bez - podle toho co bylo vzhledem k datum vyhodnejsi), do te jsem natahl data a pak vytvoril foreign keys ..

Na druhou stranu, pokud cilova db muze byt offline, asi neni problem si vypsat vsechny foreign key zminenych tabulek (od nich a na ne), ty si zapamatovat, dropnout, nahrat data a znova vytvorit. Bude to nejjednodussi a bez problemu.

S pozdravem

Ing. Jan Novotný napsal(a):
Zdravím,

   pokud se jedná jen o MySQL mohu paradit specifické řešení (ovšem
možná i další databáze mají obdobné paralely). Je možné na začátku
importního skriptu nastavit:

SET FOREIGN_KEY_CHECKS=0;

   a na konci

SET FOREIGN_KEY_CHECKS=1;

   něco málo se dočtete na blogu:
http://blog.spikesource.com/mysql_hotbackup.htm
   v dokumentaci MySQL potom:
http://dev.mysql.com/doc/refman/5.0/en/innodb-foreign-key-constraints.html

   Pak si nemusíte lámat hlavu s pořadím insertů.

Honza N.

2008/6/23 Radovana Straube <[EMAIL PROTECTED]>:
Dobry den,

potrebujem skopirovat data z jednej schemy v databaze do druhej identickej 
schemy (neskor aj pre rozne typy databaz). Ked si vylistujem zoznam tabuliek v 
scheme (pomocou getTables(..)), dostanem zoznam tabuliek v abecednom poradi 
(momentalne vyvijam na MySQL 5.0.1). V tomto zozname nie su zohladnene relacie 
medzi tabulkami, takze potom sposob prekopirovania dat SELECT - INSERT 
samozrejme nefunguje.
Mohol by ma prosim niekto nakopnut akym smerom sa mam vydat pri rieseni tohto 
problemu? Odchytavat vynimky a podla toho rotovat tabulky sa mi nezda ako velmi 
stastne riesenie.

Dakujem
Radovana Straube








--
Jiří Mareš (mailto:[EMAIL PROTECTED])
ČSAD SVT Praha, s.r.o. (http://www.svt.cz)
Czech Republic

Odpovedet emailem