我最近更新了从2000版本到2005年的MSSQL服务器,以便利用UDF并调整系统中的某些结果。 问题是我们没有源代码。
所以,我replace了SQL版本,每一个工作正常…除非我们必须做一个大的查询。 我得到这个错误:
System.Data.SqlClient.SqlException: Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.
我已经search了它,我得到的是,它使用的是一个CommandTimeout问题,我必须以编程方式解决,因为它应该是在客户端,但这很奇怪,因为它一直工作,即使大查询。
有什么办法来消除任何超时? 该系统是完全内部的,只有less数人使用它,所以没有中断的风险…我更喜欢一个查询永远运行这个烦人的消息。
提前致谢!
这些命令超时是由代码定义的,所以如果你没有源代码,那么在删除它的时候你有点不幸。
你应该做的是在会话中放置一个SQL事件探查器跟踪,并确切地找出导致长时间运行的查询的原因。 你可能会发现在数据库方面不正确的东西(缺less索引,糟糕的连接等)。