次のような別の DB からの CSV ダンプがあります (ID、名前、メモ):
1001,John Smith,15 Main Street
1002,Jane Smith,"2010 Rockliffe Dr.
Pleasantville, IL
USA"
1003,Bill Karr,2820 West Ave.
最後のフィールドには改行とコンマを含めることができ、その場合は二重引用符で囲みます。そして、これらのリターンとカンマを保持する必要があります。
このコードを使用して、CSV をテーブルにインポートします。
BULK INSERT CSVTest
FROM 'c:\csvfile.csv'
WITH
(
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
)
SQL Server 2005の一括挿入では、引用符内のキャリッジ リターンが行終端記号ではないことを認識できません。
克服する方法は?
UPDATE :
フィールド内に改行を保持する唯一の方法は、別の行セパレーターを使用することです。そのため、改行の前にパイプを配置して、すべての行区切りの改行をマークしたいと思います。CSV を次のように変更するにはどうすればよいですか?
1001、ジョン スミス、15 メイン ストリート|
1002、ジェーン・スミス、「2010 Rockliffe Dr.
Pleasantville、IL
USA」|
1003,Bill Karr,2820 West Ave.|