sql >> Databasteknik >  >> RDS >> Sqlserver

CSV-import i SQL Server 2008

Du kan använda en fil i icke-xml-format för att ange en annan avgränsare per kolumn. För värden omslutna av dubbla citattecken och avgränsade med tabb, kan avgränsaren vara \",\" . Du måste lägga till en första oanvänd kolumn för att fånga det första citatet. Till exempel, för att läsa den här filen:

"row1col1","row1col2","row1col3"
"row2col1","row2col2","row2col3"
"row3col1","row3col2","row3col3"

Du kan använda denna filformat:

10.0
4
1  SQLCHAR 0 50 "\""     0 unused ""
2  SQLCHAR 0 50 "\",\""  1 col1   ""
3  SQLCHAR 0 50 "\",\""  2 col2   ""
4  SQLCHAR 0 50 "\"\r\n" 3 col3   ""

(Numret på den första raden beror på SQL Server-versionen. Siffran på den andra raden är antalet kolumner som ska läsas. Glöm inte att justera det .)

bulk insert kommandot accepterar en formatfile = 'format_file_path' parameter där du kan ange formatfilen. Till exempel:

BULK INSERT YourTable
FROM 'c:\test\test.csv'
WITH (FORMATFILE = 'c:\test\test.cfmt')

Detta resulterar i:

select * from YourTable
-->
col1        col2        col3
row1col1    row1col2    row1col3
row2col1    row2col2    row2col3
row3col1    row3col2    row3col3


  1. Ignorerar substitutionsvariabel när villkoret inte är uppfyllt

  2. Problemhanteringsdatum i doktrin php

  3. Överför google map koordinater till mysql databas

  4. Hämta procentandel av Count(*) till antalet av alla objekt i GROUP BY