Bulk insert trigerrel
-
Thursday, September 11, 2008 11:03 AM
udv en ugy tudtam, hogy ez:
BULK
INSERT TablamFROM
'D:\input.txt'WITH
(CODEPAGE = '1250', FIRE_TRIGGERS, BATCHSIZE=1, ROWS_PER_BATCH = 1, MAXERRORS = 1, FIELDTERMINATOR = '~', ROWTERMINATOR='~\n')arra jo, hogy a bulk insert soran lefusson a trigger es hogy rekordonkent csinalja az insertet, azaz a tirggert is rekordonkent hivja meg, ellenben ha igy nez ki:
CREATE
TRIGGER [dbo].[II_Tablam]on
[dbo].[Tablam]INSTEAD
OF INSERTAS
print
'hivas'select
count(*) from insertedes van 4 sorom a txt-ben akor ezt kapom:
hivas
4
es en meg erre szamitottam volna:
hivas
1
hivas
1
hivas
1
hivas
1
a kerdes, hogy ki lehet-e valahogy eroszakolni hogy megis csak rekordonkent fusson ez a dolog de mardva a bulk insertnel
?
All Replies
-
Friday, September 12, 2008 12:00 PMOwner
Ha jól tudom a trigger mindig műveletenként fut, nem pedig rekordonként.
http://www.eggheadcafe.com/software/aspnet/32855454/after-insert-trigger-does.aspx
-
Friday, September 19, 2008 11:41 AMModerator
Ne használd a ROWS_PER_BATCH = 1-et.
Hanem csak így:
BULK INSERT Tablam
FROM 'D:\input.txt'
WITH (CODEPAGE = '1250', FIRE_TRIGGERS, BATCHSIZE=1, MAXERRORS = 1, FIELDTERMINATOR = '~', ROWTERMINATOR='~\n')
-
Friday, September 19, 2008 1:27 PM
Yes!
megvan a bibi, ez volt a baj valoban

koszi szepen!
Pötyös

