-1

嗨我收到错误Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding
我alredy更改连接timeout = 60000和数据库我的过程是在43秒执行。所以PLZ给我一些完美的解决方案超时已过期。操作完成之前超时时间已过或服务器没有响应

谢谢

+2

这里没有足够的信息来告诉你”重做,或者可能导致你的问题。 – forsvarir

+0

@amer请提供更多详情。你在用哪种语言?你在使用图书馆,框架,CMS吗?您与之通信的服务器技术是什么?你是否试图查询数据库,读取文件?目前您的问题缺乏非常重要的信息,可能会导致它被关闭。 – Sampson

+0

@Jonathan错误是一个典型的ado.net/sql错误,但其真实的更多信息可能有所帮助。至少有一些明智的标签。 –

回答

17

您应该注意,Timeout property对于SqlConnection对象和Timeout property对于SqlCommand对象是不同的属性。
默认情况下,命令超时设置为30秒。将它设置为60,你的问题就解决了:

commandObject.Timeout = 60; 

但最有可能的是,你应该改变你的SQL程序,或者拆分某些部分

+0

昨天给出了同样的答案! –

+1

@Pinakin Shah你能解释一下吗,你为什么不喜欢它?我刚刚添加了重构sql的建议。 – VMAtm

+0

您的回答与我昨天给出的答案相同,我没有检查您是否有一些额外的建议。会给你一个投票:) –

1

增加查询超时。连接超时只在连接时间。假定您正在使用SqlCommand,那里有一个超时属性。

4

尝试使用Microsoft SQL Server Management Studio运行您的SQL查询,然后单击“预计执行计划”按钮。这会告诉你是否缺少任何索引。添加缺失的索引应该可以加快查询速度。

相关问题