Excel が CSV を正しく保存していなかったため、Google ドライブからそのタイプとしてダウンロードした UTF-8 CSV ファイルを一括挿入しようとしています。
Google ドライブで生成された CSV ファイルをメモ帳 ++ で開いて移動したところ、行ターミネータの改行View > Show Symbol > Show All Characters
が含まれていることがわかりました (ここで間違っている場合は修正してください)。LF
そこで、以下を試しましたが、一時テーブルにレコードがありません。これは、デフォルトの行ターミネータ (指定しない場合は「\r\n」) を使用すると、UTF-8 ではない他の CSV ファイルで機能します。
また、行ターミネータに「\t」、「\r\n」、「\r」、および「\0」を試しましたが、データ ファイル タイプの有無にかかわらず..何も機能していないようです。これは、一時テーブルのフィールド タイプと関係がありますか? または、他の何か?
CREATE TABLE #TEMPResourceContents (
[ResourceName] [nvarchar](250) NOT NULL,
[Language] [nvarchar](250) NOT NULL,
[Content] [nvarchar](max) NOT NULL
)
GO
BULK INSERT #TEMPResourceContents
FROM 'C:\import-resources.csv'
WITH
(FIRSTROW = 2, DATAFILETYPE = 'widechar', FIELDTERMINATOR = ',', ROWTERMINATOR = '\n')
GO
SELECT * FROM #TEMPResourceContents