Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Skript za popunjavanje tabele

[es] :: MS SQL :: Skript za popunjavanje tabele

[ Pregleda: 1743 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Jpeca
Predrag Jovanović
poslovni analitičar
Gowi
Pančevo

Član broj: 25683
Poruke: 2268
194.106.170.*

Sajt: www.gowi.rs


+109 Profil

icon Skript za popunjavanje tabele17.05.2011. u 12:44 - pre 157 meseci
Svakih mesec, dva potrebno je ažurirati tabelu koja ima oko 50000 redova. Novi sadržaj tabele formiram u lokalnoj SQL bazi. Da je prebacim na testno, odnosno produkciono okruženje, pomoću Database publisher-a kreirao sam skript koji briše postojeću tabelu, kreira novu i popunjava tabelu red po red pomoću INSERT ... VALUES ...
Problem je što ovo traje oko 30 minuta.

Da li postoji efikasniji način da se ovo uradi? Da li postoje neke opcije koje se mogu uključiti pre insert kako bi ovo bilo efikasnije?

Bitno je da bude skript koji će se startovati kad se dogovori, jer nemam direktan pristup produkcionom serveru, pa ne mogu popuniti tabelu iz moje lokalne verzije. Verzija servera je 2005 tako da nije moguće koristiti jedan insert za više redova. Potrebno je da se ažuriraju svi redovi - znači nije samo dodavanje novih. Tabela koja se popunjava nema trigera, ni constrains.


Nije to loše Rembrante, samo što ne bi dodao još malo boje?
 
Odgovor na temu

stevs986
Nikolic Sladjan
Senior Software Developer
Alterset d.o.o
Beograd

Član broj: 121154
Poruke: 140
*.kbcnet.rs.



+4 Profil

icon Re: Skript za popunjavanje tabele17.05.2011. u 13:09 - pre 157 meseci
A da prvo kreiras tabelu IME_TABELE_NEW tim skriptom, pa koliko traje da traje. A onda iz nje samo

Code:


INSERT INTO TABELA(...)

SELECT *
FROM IME_TABELE_NEW




Ovo bi trebalo ici znatno brze. S tim da opet imas izgubljeno vreme za pravljenje te prrivermene tabele i insert u nju.

Ali downtime ti je vrlo mali.
 
Odgovor na temu

Koce
DBA
Serbia, Belgrade

Član broj: 59217
Poruke: 144
82.214.127.*



+1 Profil

icon Re: Skript za popunjavanje tabele20.05.2011. u 09:02 - pre 157 meseci
Umejsto sto kreiras skript za "insert into", pokusaj rezultat upita snimiti u text file pa uradi bulk insert iz njega na produkciji.
Takodje, ako na tabeli imas indexe, skini ih pre punjenja i ponovo vrati kad zavrsis.
 
Odgovor na temu

[es] :: MS SQL :: Skript za popunjavanje tabele

[ Pregleda: 1743 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.