2

我正在尝试批量插入我从 Google Drive 下载为该类型的 UTF-8 CSV 文件,因为 Excel 没有正确保存我的 CSV。

我在 notepad++ 中打开了 Google Drive 生成​​的 CSV 文件,View > Show Symbol > Show All Characters然后我可以看到它包含LF行终止符的换行符(如果我在这里错了,请纠正我)

所以我尝试了以下方法,但在临时表中没有任何记录。当我使用默认行终止符时,这适用于其他不是 UTF-8 的 CSV 文件(即,当您未指定行终止符时为 '\r\n')。

我还尝试了 '\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
4

1 回答 1

4

顺便说一句,BULK INSERT 不支持 UTF-8。

请参阅参考链接 MSDN

请参阅参考链接

于 2013-01-01T23:47:32.600 回答