Autor | Zpráva | ||
---|---|---|---|
JosPol Profil |
#1 · Zasláno: 4. 10. 2017, 19:46:41
Ahoj,
1. Chci převézt data z jedné tabulky (aktualizační) do tabulky druhé (stávající). V tabulce stávající mi stačí zachovat nastavení indexů. 2. Tabulka stávající obsahuje některé sloupce, které bych chtěl ponechat. Napadá mě je oddělit i s primárním klíčem do jiné tabulky, naexportovat nová data a poté sloučit podle primárního klíče. Tabulky obsahují cca 1,5 milionu dat. Prosím o radu, jak nejlépe na to. Díky moc! |
||
Kajman Profil |
#2 · Zasláno: 4. 10. 2017, 20:46:35
Pokud uděláte ten Váš nápad s druhou tabulkou, tak si můžete udělat i třetí, na kterou přejmenujete aktualizační tabulku. Místo první pak uděláte view, které spojí obě tabulky a bude mít stejné sloupce jako původní tabulka. Pak byste možná nemusel ani upravovat moc kódu v aplikaci (snad jen úpravy, pokud si to neošetříte triggery nad view).
Nebo uděláte jednoduše tři dotazy dle primárního klíče - update těch, které jsou v obou tabulkách - insert těch, které v původní tabulce nejsou - smazání těch, které nejsou v aktualizační tabulce V některých databázových systémech lze některé z těch tří kroků spojit do jednoho dotazu. Pro hromadné vkládání možná bude lepší dočasně vypnout/zrušit indexy jiné než primární klíč a pak je zase nahodit. Ale závisí i na datech, to si musíte změřit, jestli to bude přínos nebo zpomalení. |
||
Časová prodleva: 7 let
|
0