【发布时间】:2012-06-06 17:47:19
【问题描述】:
我正在尝试从 CSV 文件在数据库中添加批量数据。
Employee 表有一列 ID (PK) 自动递增。
CREATE TABLE [dbo].[Employee](
[id] [int] IDENTITY(1,1) NOT NULL,
[Name] [varchar](50) NULL,
[Address] [varchar](50) NULL
) ON [PRIMARY]
我正在使用这个查询:
BULK INSERT Employee FROM 'path\tempFile.csv '
WITH (FIRSTROW = 2,KEEPIDENTITY,FIELDTERMINATOR = ',' , ROWTERMINATOR = '\n');
.CSV 文件 -
Name,Address
name1,addr test 1
name2,addr test 2
但它会导致此错误消息:
第 2 行第 1 列 (id) 的批量加载数据转换错误(指定代码页的类型不匹配或无效字符)。
【问题讨论】:
-
您能否将您的示例数据发布在 csv 文件中
-
我正在寻找
KEEPIDENTITY的东西...谢谢! -
其实有一个非常简单的解决方案。创建一个视图,仅省略 ID 列,然后将批量插入到视图中。
标签: sql-server bulkinsert identity-column