Bulk-Insert in SQL server ein CSV mit Zeilenumbrüchen in Feldern

Ich habe eine Csv, die so aussieht:

"blah","blah, blah, blah ect, ect","column 3" "foo","foo, bar, baz more stuff on another line", "another column 3" 

Ist es möglich, diese direkt in SQL server zu importieren?

Jede Zeile in deiner file endet mit neuer Zeile (\ n), aber die eigentlichen Zeilen, die du mit Anführungszeichen und neuer Zeile beenden willst. Setzen Sie ROWTERMINATOR im Befehl BULK INSERT auf:

 ROWTERMINATOR = '"\n' 

EDITED: Ich denke, das größere Problem wird mit Kommas im Text sein. SQL server verwendet keine Textumhänge. So wird die Zeile auf Kommas geteilt, ohne zu prüfen, ob das Komma innerhalb von Anführungszeichen ist oder nicht.

Sie können das mögen:

 BULK INSERT newTable FROM 'c:\file.txt' WITH ( FIELDTERMINATOR ='",', ROWTERMINATOR = '"\n' ) 

Dies gibt Ihnen folgendes Ergebnis:

 col1 | col2 | col3 ---------------------------------------------------------------- "blah | "blah, blah, blah ect, ect | "column 3 "foo | "foo, bar, baz more stuff on another line | "another column 3 

Alles, was Sie tun müssen, ist, die Anführungszeichen am Anfang jeder Zelle loszuwerden.

Beispielsweise:

 UPDATE newTable SET col1 = RIGHT(col1,LEN(col1)-1), col2 = RIGHT(col2,LEN(col2)-1), col3 = RIGHT(col3,LEN(col3)-1) 

Ich denke, Sie können dies auch mit bcp-Dienstprogramm mit Format-file