2016-12-21 26 views
1

Ich habe eine CSV, die keine HEADER-Zeile hat. Bei Verwendung von OpenRowSet wird davon ausgegangen, dass die erste Zeile die HEADER-Zeile ist. Wie verhindere ich das? Ich weiß, dass es 18.000 Datensätze in meiner CSV-Datei gibt, aber wenn ich OpenRowSet öffne, erhalte ich nur 17.999 und die erste Zeile in der CSV wird als Spaltenüberschrift bezeichnet.T-SQL OpenRowSet von CSV fehlende Kopfzeile

TIA

+2

Versuchen Hinzufügen '; HDR = NO' an die Verbindungszeichenfolge. –

Antwort

1

die firstrow Option für openrowset hinzufügen.

zum Beispiel:

select * 
    from openrowset(bulk n'd:\test-csv.csv' 
     , formatfile = n'd:\test-csv.fmt' 
     , firstrow=1 
     , format='csv' 
    ) as eg; 

Als Alex K., erwähnte HDR=NO verwendet, wird helfen, wenn eine Verbindungszeichenfolge zu einer Quelle ohne Kopfzeile verwenden.

select * 
    from openrowset('Microsoft.Jet.OLEDB.4.0' 
    , 'Excel 8.0;Database=d:\test.xls;HDR=No' 
    , 'SELECT * FROM [Sheet1$]' 
    ) as eg. 
+0

Erstens mache ich es nicht in "BULK", da ich keine Formatdatei habe, also nicht sicher, ob ich die "FIRSTROW" -Option verwenden kann. Ich kann die zweite Methode versuchen und sehen, was passiert. Vielen Dank –

Verwandte Themen