Avatar billede Slettet bruger
22. juli 2009 - 10:37 Der er 4 kommentarer

SQL BULK INSERT fejler

Jeg udfører følgende BULK INSERT:

SqlCommand command = new SqlCommand(string.Format(@"
BULK INSERT [{0}] FROM '{1}'
WITH (
CHECK_CONSTRAINTS,
CODEPAGE = '1252',
FIELDTERMINATOR = ';¤;',
KEEPIDENTITY,
KEEPNULLS,
MAXERRORS = 0,
ROWTERMINATOR = '|¤|',
FORMATFILE='" + formatFile + "')", table, filename), connection);
                   
Format filen bruges til at selektere hvilke kolonner jeg vil indsætte, da source tabellen indholder én kolonne mere end destinations tabellen.

Jeg får følgende fejl:
Bulk load: An unexpected end of file was encountered in the data file.

Data fil (Source tabel):
http://www.gratisupload.dk/download/31638/

Nogen der kan svarer på, hvorfor den siger den fejl?
Avatar billede hrc Mester
22. juli 2009 - 17:47 #1
.. sikkert for banalt, men har du tjekket filen for ekstra linjer i bunden?
Avatar billede hrc Mester
22. juli 2009 - 18:02 #2
Nå, det gjorde den ikke; filen ser helt ok ud (sær, men ok) - men hvad med at fjerne den sidste rowterminator ('|¤|')?
Avatar billede Slettet bruger
22. juli 2009 - 23:06 #3
Har prøvet at fjerne den, uden success.. jeg har også prøvet at ændre TERMINATOR i format filen efter bedste evne, hvor jeg til sidst så bare ender med at få en mismatch fejl. Jeg tror EOF fejlen skyldes en forkert TERMINATOR i format filen.
Avatar billede hrc Mester
22. juli 2009 - 23:27 #4
Tjaa. Det var ikke så simpelt. Prøv at se her: http://msdn.microsoft.com/en-us/library/ms188365.aspx

Der er en parameter du ikke har angivet: LASTROW. Hvis du kender antallet af records (og det gør du jo), så kan du vel stoppe din bulk insert på den hårde måde.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester