非 xml 形式のファイル
を使用できます 列ごとに異なる区切り文字を指定します。二重引用符で囲まれ、タブで区切られた値の場合、区切り文字は \",\"
のようになります .最初の引用をキャプチャするには、最初の未使用の列を追加する必要があります。たとえば、このファイルを読み取るには:
"row1col1","row1col2","row1col3"
"row2col1","row2col2","row2col3"
"row3col1","row3col2","row3col3"
このフォーマット ファイルを使用できます:
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 ""
(1 行目の数字は SQL Server のバージョンによって異なります。2 行目の数字は読み取る列の数です。忘れずに調整してください .)
bulk insert
コマンドは formatfile = 'format_file_path'
を受け入れます フォーマットファイルを指定できるパラメーター。例:
BULK INSERT YourTable
FROM 'c:\test\test.csv'
WITH (FORMATFILE = 'c:\test\test.cfmt')
これにより:
select * from YourTable
-->
col1 col2 col3
row1col1 row1col2 row1col3
row2col1 row2col2 row2col3
row3col1 row3col2 row3col3