Sql server SQL Server 2012大容量插入类型不匹配错误
我是一个初学者,只是在学习如何使用SQL Server,我似乎在使用批量插入时遇到了麻烦。我已经潜伏在类似的线程中,但我有两个类型不匹配的错误,我根本无法找出 这是表(psuedo SQL) 这是我的批量插入语句Sql server SQL Server 2012大容量插入类型不匹配错误,sql-server,sql-server-2012,bulkinsert,Sql Server,Sql Server 2012,Bulkinsert,我是一个初学者,只是在学习如何使用SQL Server,我似乎在使用批量插入时遇到了麻烦。我已经潜伏在类似的线程中,但我有两个类型不匹配的错误,我根本无法找出 这是表(psuedo SQL) 这是我的批量插入语句 BULK INSERT patient FROM patient.csv WITH ( FIRSTROW = 2, FIELDTERMINATOR = ',', ROWTERMINATOR = '\n' ) 返回的错误是 4864,大容量加载数据转换错误(类型不匹配
BULK INSERT patient
FROM patient.csv
WITH (
FIRSTROW = 2,
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
)
返回的错误是
4864,大容量加载数据转换错误(类型不匹配或无效
第347行第29列的指定代码页字符)
(ADOS)
4864,大容量加载数据转换错误(类型不匹配或无效
第347行第49列(PTOS)的指定代码页字符
在引发错误的两个位置都有
- 没有额外的空格
- 没有隐藏字符
- 值的格式与之前的346个类似类型值相同
那么,为什么只有在第347行中才会抛出错误?在
ADOS
之前的varchar
值中,可能有一个逗号(甚至是新行
)。因为这是你的字段终结者,它可以解释这个错误。和@HoneyBadger的结论相同。我打赌您的雇主或EmpAddr在第347行中有一个逗号:例如CompanyName,LLP
BULK INSERT patient
FROM patient.csv
WITH (
FIRSTROW = 2,
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
)