从品牌网站建设到网络营销策划,从策略到执行的一站式服务
1. 与SQL相关的timeout, 都是由Client端发起的.
成都创新互联拥有一支富有激情的企业网站制作团队,在互联网网站建设行业深耕10多年,专业且经验丰富。10多年网站优化营销经验,我们已为数千家中小企业提供了网站设计制作、网站制作解决方案,定制网站,设计满意,售后服务无忧。所有客户皆提供一年免费网站维护!比如说, 我们自己写了个C#小程序, 其中使用了SqlCommand.CommandTimeout属性, 指定它的值为20秒. 那么, 当这个query在SQL端执行了二十秒后, 我们的C#小程序会给SQL Server发送一个TDS Tension数据包, 告诉SQL Server我这边超时了, 你那边的query不用做了. 于是SQL相应client的请求, 断掉connection. Client端报出一条exception, 说SQL Server端的运行时间太长, 超过了我们原定的时限.
2. 那么SQL Server Management Studio中有如下两个有关Timeout的选项, 他们是干什么的呢?
如果我们把Management Studio看作是我们自己写的C#程序, 在这个程序中我们只写下来要执行的语句, timeout设置呢? 这里的a选项指定的值就是SqlCommand.CommandTimeout. 好懂吧. ^_^
假设我们的C#小程序连接到SQL Server 1上运行存储过程取数据, 在这个存储过程中, SQL Server 1需要到SQL Server 2上去取原始数据. 那么, 如果SQL Server 2上的查询执行了600秒之后(默认值), 那么SQL Server 1会发给SQL Server 2, 告诉它这个查询我嫌它太久, 你不要做了. 于是SQL Server 1 发给SQL Server 2一个数据包, 告诉它停吧. 然后Server 2断掉他们之间的Connection.
由此可见, 在一般情况下, b选项与我们关系不是很大.
我在研究这两个选项的时候, 发现StackOverFlow.com上的网友问起相关的问题, 回答问题的人经常给出这两个选项. 其实这是错误的. 调整了之后也不会对SQL端运行超时的问题有改善的.
资料来源:
http://www.cnblogs.com/awpatp/archive/2012/07/11/2586246.html
成都网站建设公司地址:成都市青羊区太升南路288号锦天国际A座10层 建设咨询028-86922220
成都快上网科技有限公司-四川网站建设设计公司 | 蜀ICP备19037934号 Copyright 2020,ALL Rights Reserved cdkjz.cn | 成都网站建设 | © Copyright 2020版权所有.
专家团队为您提供成都网站建设,成都网站设计,成都品牌网站设计,成都营销型网站制作等服务,成都建网站就找快上网! | 成都网站建设哪家好? | 网站建设地图