首页 新闻 会员 周边

Timeout 时间已到。在操作完成之前超时时间已过或服务器未响应。

0
悬赏园豆:10 [已解决问题] 解决于 2013-01-07 14:59

Microsoft SQL Server 2008 R2   这是我使用的数据库。我是从接口中取到一个XML,然后将XMl传到存储过程中,在存储过程中针对XML进行操作。但是由于XML的数据量过大,因此会出现如标题一样的错误。 我百度了   看到网友说在连接字符串上写Connection Timeout=0;  我加了这个。我的sql连接字符串如下“server=service;UserID=sa;Password=123;database=test;Connection Timeout=0;Connection Reset=FALSE”

但是这样没有效果。所以求老鸟指教    看我这新手又是哪个步骤给丢了  求指教

呓语鑫的主页 呓语鑫 | 菜鸟二级 | 园豆:313
提问于:2013-01-07 11:37
< >
分享
最佳答案
1

你理解错了,Connection Timeout 是指等待连接打开的时间(以秒为单位)。默认值为 15 秒。

你现在的问题是连接已经成功了,并不是等待连接超时,你应该把那个异常给贴出来。

鉴于你提到存储过程执行周期较长,因此这里的超时是指的客户端等待服务器响应的超时,同Connection Timeout没有任何关系。

目前我还没找到如何控制TCP层面的超时设置,但是你可以尝试使用异步的方式来执行这个存储过程,在连接字符串中标记:Asynch = True,在调用时采用 BeginExecute 来执行你得存储过程。

 

你可以尝试用 SqlCommand.CommandTimeout 来设置超时。

在异步方法调用(如 BeginExecuteReader)过程中,CommandTimeout 属性将被忽略

因此上面两种方式应该都可以解决你的问题。

收获园豆:10
Launcher | 高人七级 |园豆:45045 | 2013-01-07 14:10

嗯     我的错误已经解决了     是我理解错误了   我那个不是连接超时   而是执行的时间太长

呓语鑫 | 园豆:313 (菜鸟二级) | 2013-01-07 14:58
其他回答(3)
1

SqlConnection.ConnectionTimeout 属性  可以设置长一些,默认为15秒

请参考:http://msdn.microsoft.com/zh-cn/library/system.data.sqlclient.sqlconnection.connectiontimeout(v=vs.80).aspx

滴答的雨 | 园豆:3660 (老鸟四级) | 2013-01-07 11:50

备注


在连接字符串中使用 ConnectTimeoutConnection Timeout 关键字,可以设置某个连接等待超时的时间。值 0 指示无限制,在 ConnectionString 中应避免值 0,否则会无限期地等待连接尝试。

 

为0的时候是不受时间限制了。  我不知道是不是数据库的原因,在有的帖子上看到说sqlserver2008的时间是自动去设置的   我不知道是不是这个原因

支持(0) 反对(0) 呓语鑫 | 园豆:313 (菜鸟二级) | 2013-01-07 11:53

……这家伙是只读的!!官方也说:在连接字符串中使用 ConnectTimeout 或 Connection Timeout 关键字,可以设置某个连接等待超时的时间。值 0 指示无限制,在 ConnectionString 中应避免值 0,否则会无限期地等待连接尝试。   

支持(0) 反对(0) 滴答的雨 | 园豆:3660 (老鸟四级) | 2013-01-07 11:53
0

Connection Timeout=0 修改一个大的数字看看 ,不如 1000000

chenping2008 | 园豆:9836 (大侠五级) | 2013-01-07 11:54

这个问题不是没有连接上数据库   只是存储过程里面的数据量过大,因此一直在执行存储过程,时间太久   所以程序断开了    我想设置一个程序断开时间    使用这个属性设置吗、?

支持(0) 反对(0) 呓语鑫 | 园豆:313 (菜鸟二级) | 2013-01-07 12:31
0

不一定是超时问题,你可以直接调用存储过程测试,把xml当作参数传过去

卒子 | 园豆:588 (小虾三级) | 2013-01-07 13:19

尝试过   现在解决了    XML的数据量大了点     直接在sql中执行存储过程也是要等很久

支持(0) 反对(0) 呓语鑫 | 园豆:313 (菜鸟二级) | 2013-01-07 14:59
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册