SqlBulkCopy导入数据时:在从服务器接收结果时发生传输级错误。(provider:TCP提供程序,error:0-提定的网络名不再可用)

来源: http://www.lmwlove.com/ac/ID473

自己做了一个小工具,利用SqlBulkCopy将数据批量导入数据库中。以前都用的好好的,今天在使用的时候竟然报:在从服务器接收结果时发生传输级错误。(provider:TCP提供程序,error:0-提定的网络名不再可用)的错误,还以为是服务器有问题了,一翻检查后确认服务器没有问题。又以为是列映射错误,认真检查,调试,还是没有问题。抓狂了……

            老老实实从数据源检查,突然发现数据源中某行数据的某列的长度超过了数据库字段的长度,莫不是问题出在这?把字段长度改大一些,测试,果然通过了,终于找到原因了……


            总结:在使用SqlBulkCopy导入数据时,如果数据源的数据长度超过了数据库字段长度,就会关闭SqlServer服务,从而引发:在从服务器接收结果时发生传输级错误。(provider:TCP提供程序,error:0-提定的网络名不再可用)的错误。

            不过一直没想明白,超出字段长度就应该返回超出字段长度的错误,为什么要关闭SqlServer服务,搞的这么严重呢?

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值