程序猿改变世界
传输级错误,就是Tds类错误,也就是表格数据流协议,是建立在TCP/IP Net-Library之上的,包含在TCP数据段内。TDS用1433端口进行数据库通信。TDS客户端使用称为表格格式数据流 (TDS) 的 SQL Server 专用应用程序级协议来发送 SQL 语句。
大致的过程:
数据包由用于 SQL Server 的 Microsoft OLE DB 提供程序、SQL Server ODBC 驱动程序或 DB-Library DLL 生成。TDS 数据包然后被传递给 SQL Server 客户端 Net-Library,客户端 Net-Library 将 TDS 数据包封装为网络协议数据包。
在服务器上,服务器 Net-Library 接收网络协议数据包,且析取 TDS 数据包并将其传递给关系数据库服务器。在将结果返回给客户端时,这一进程反向执行。
从上面也可以看出,这个应该是属于sql server底层所使用的一种通信协议,这里涉及到了:sql server的进程、网络、net-library,所以:如果一旦网络有不稳定或者断网了,异或,sql server进程出现了问题,再或者这个net-library有bug,那么可能就会导致这个传输级错误了。
分析其主要原因是“连接断开”,以下列出几种相关原因案例:
1、网络未连接,或者在连接的时候断网;
2、连接实例的时候sqlserver突然断了,比如你在使用的时候sqlserver服务不正常关闭等。
3、数据库有异常,比如数据库处于“警告”等的状态,或者数据库处于受限访问状态。也会无法访问,这种情况比较常见。
4、连接在高并发线程中频繁地打开和关闭。
我的就是SqlConnection 连接对象在高并发线程频繁的打开和关闭导致的,所以处理方式就改成了只有在不使用连接的时候才关闭它。
来源:时间去哪儿了博客(微信/QQ号:903918446),转载请保留出处和链接!
本文链接:http://timegowhere.com/post/transporterror.html
本文标签:NET
【个人微信】
【时间去哪儿了】
教育类博客,关注知识的分享与交流。
欢迎关注公众号!
加我微信
Copyright © 2014-2016 timegowhere.com. All rights reserved. 粤ICP备15081222号