使用sqlbulkcopy报错:1 DataSet 不支持 System.Nullable<>,2.来自数据源的 datetime 类型的给定值不能转换为指定目标列的类型int。...

本文分享了使用DataTable时遇到的两个常见问题及其解决方案:一是如何正确添加包含可空类型的列;二是解决BulkCopy到数据库时出现的问题,包括检查列类型和确保列顺序正确。

第一个问题,

解决方法:dt.addcolunms("名字","类型"),类型不能为typeof( int?),typeof(datetime?)等可空值类型.字符串可以.所以可空值类型改成不可空即可.

第二问题,

解决方法: bulkCopy.WriteToServer(dt);先检查dt的列类型是不是不对?,如果没问题,再检查这个dt的列的顺序和数据库列的顺序保持一致.

 

本人遇到这两个问题就这样解决了.有朋友可能会说,我datatable的列名不就是字段名吗,为什么要顺序一致?实际上他是按顺序来的,不是根据列名来.

如果有错误,欢迎指出.

 

转载于:https://www.cnblogs.com/Levent/p/7147664.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值