为了账号安全,请及时绑定邮箱和手机立即绑定

sqlbulkcopy 使用DataTable作为数据源的数据类型问题。?

sqlbulkcopy 使用DataTable作为数据源的数据类型问题。?

12345678_0001 2018-11-20 10:08:42
小弟在做批量插入sqlserver,于是便使用了sqlbulkcopy类,但是发现在插入的时候,经常报类型无法转换的问题(我确定传进去的值都对 的),然后为了证实这一点,我甚至将数据库的记录select出来,然后修改uniqueidentifier类型的主键值为 Guid.NewGuid(); 然后再使用sqlbulkcopy往数据库插,竟然还会报《《来自数据源的 Int32 类型的给定值不能转换为指定目标列的类型 uniqueidentifier。》》的异常,然后我还将table的该列设置类型 modelTable.Columns["MyCategoryId"].DataType = Type.GetType("System.Guid"); 依然无效。
查看完整描述

2 回答

?
富国沪深

TA贡献1790条经验 获得超9个赞

建立一个table 创建一个列 类型是guid 看看 行不行

查看完整回答
反对 回复 2018-11-24
?
饮歌长啸

TA贡献1951条经验 获得超3个赞

DataTable dt = new DataTable();
dt.Columns.Add("Id", typeof(System.Data.SqlTypes.SqlGuid));

DataRow dr = dt.NewRow();
dr["Id"] = (SqlGuid)System.Guid.NewGuid();

问题解决.


查看完整回答
反对 回复 2018-11-24
  • 2 回答
  • 0 关注
  • 396 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信