【发布时间】:2013-06-18 08:23:32
【问题描述】:
我在 CSV 文件中有一些财务数据,我想将其放入 SQL 表中。
我想运行我改编自此来源的以下脚本:(http://blog.sqlauthority.com/2008/02/06/sql-server-import-csv-file-into-sql-server-using-bulk-insert-load-comma-delimited-file-into-sql-server/)
CREATE TABLE Price
(ID INT IDENTITY(1,1) NOT NULL,
PriceDate datetime2,
OpenPrice decimal(10,4),
HighPrice decimal(10,4),
LowPrice decimal(10,4),
ClosePrice decimal(10,4),
Volume int,
AdjClose decimal(10,4),
AdjOpen decimal(10,4),
AdjLow decimal(10,4),
AdjHigh decimal(10,4)
)
GO
BULK
INSERT Price
FROM 'C:\Users\Public\Documents\bhp.csv'
WITH
(
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
)
GO
我收到以下错误:
'Bulk load data conversion error (type mismatch or invalid character for the specified codepage) for row 1, column 1 (ID).'
我认为,这是因为我的“ID”是主键和自动编号增量。
显然我不想通过 CSV 生成这个数字(我计划稍后将多个 CSV 文件插入到这个表中),我希望它由数据库生成。
是否可以向BULK INSERT 指定我计划为每一列插入哪些列?
【问题讨论】:
-
试试上面的stackoverflow.com/questions/14711814/…顺便说一句,好问题+1。
标签: sql sql-server bulkinsert