對於SQL Server 2008 R2,是否可以使用「批量插入」導入帶「MM/DD/YYYY」格式日期的.csv文件?或者是否必須將我的.csv文件更改爲SQL Server 2008 R2預期的格式?錯誤:「對於第2行第1列(日期),批量加載數據轉換錯誤(類型不匹配或指定代碼頁的字符無效)」。
我執行在Microsoft SQL Server以下2008 R2:
BULK
INSERT dbo.TCsvOptionContracts
FROM 'C:\x.csv'
WITH
(
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n',
FORMATFILE = 'C:\format.xml',
FIRSTROW = 2
)
GO
而且我得到這個錯誤:
Bulk load data conversion error (type mismatch or invalid character for the specified codepage) for row 2, column 1 (Date).
.csv文件的該列中的日期是形式MM/DD/YYYY,即「02/16/2011」。
p.s.我生成使用下面的命令格式文件,但是,我沒有看到任何選項來指定MM/DD/YYYY日期爲違規列格式:
bcp Engine..TCsvOptionContracts format nul -c -x -f C:\format.xml -t, -T
更改爲smalldatetime不適用於我。我有用BCP創建的CSV文件。使用SQL Server 2005而不是2008。 – 2011-10-21 20:11:16