来自数据源的 String 类型的给定值不能转换为指定目标列的类型 nvarchar

.TrimEnd()

怀疑是否SqlBulkCopy是否存在某种bug,故而在系统中改写代码,用单个sql的插入数据方式,用循环逐条导入。结果是没问题。难道真的是SqlBulkCopy有某种bug?上网搜了一通,竟没有一条说有什么bug之类的。

偶然一次发现,len函数取数据长度是去了尾部空格的。
故而在代码中对用于批量导入的数据,导入前进行一次遍历,将该字段中数据用TrimEnd()去尾部空格。结果批量导入成功了!

 

其他:

1,首先检查数据库表的字段是否过小

2,检查数据中是否有类似单引号的数据,做一下过滤

 

posted @ 2018-10-03 23:33  随便取个名字算了  阅读(2607)  评论(0编辑  收藏  举报