日期:2014-05-18  浏览次数:20449 次

SQL2005:Timeout expired. 急
用ASP.NET 2.0写了一个程序,用上AJEX技术,新增修改删除等功能,
每个LIST是10条记录,全选删除10记录,当删除40-100條記錄時,就會出現以下錯誤:
Message:Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool.  
This may have occurred because all pooled connections were in use and max pool size was reached.

请高手解答一下,不够分可以商量。

------解决方案--------------------
呵呵,这个是因为你.net设置的数据库连接池满了,不是因为SQL超时,两个方式可以搞定:
1 修改你的程序数据库连接串,添加连接池参数,如果不设置,默认为100个connection,一般也够用了,举例如下,调整为500:
 .......Min Pool Size=20;Max Pool Size=500; data source=localhost;.......

不过看你提出的问题,我觉得是程序问题,应该是因为没有关闭connection,导致connection越来越多
2 检查程序中是否有未释放的connection,即每次connection建立后,是否有对应的close操作。