System.InvalidOperationException: 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. at System.Data.SqlClient.SqlConnectionPoolManager.GetPooledConnection(SqlConnectionString options, Boolean& isInTransaction) at System.Data.SqlClient.SqlConnection.Open() at shan这个系统抛出的异常信息。
因为数据库不在本地,是一个远端的管理模式。数据库那边说,数据库设置正常,我就不明白,我程序没做什么数据库连接设置,就出现了这样的错误。真是奇怪!!

解决方案 »

  1.   

    你用的是什么数据库?版本呢?
    如果是SqlServer 2000要打补丁sp3的。
      

  2.   

    是显示的超时,我就想知道,在那几个方面会导致这样的错误呀,我就知道:
    1:网络问题(包括堵塞,不通和错误);
    2:假如数据库设置了最大连接数的话,在到达了最大连接数,也会出现这个问题;
    3:当然还有用户名密码错误;
    4:数据库服务器名称错误这些;我用的数据库是ms sqlserver 2000
      

  3.   

    这个错误估计是因为你没有数据库的存取权限,或者根据错误提示:all pooled connections were in use and max pool size was reached 有可能是因为你或者被人程序中跟数据库建立的连接过多,数据库已经没有能力建立更多的新连接了。试着在数据库用完的时候,Close掉
      

  4.   

    我在程序中,都进行了close,我就不明白。
    我在每个页面上的都创建了那个对象,如下:
    public class car : System.Web.UI.Page
    {
    protected string;
                      ...
    protected data zddata=new data();
                      ...
    protected System.Web.UI.HtmlControls.HtmlTable table1;
                      ...}
    创建了“protected data zddata=new data();”,就是用这个类来使用数据库,我能不能在在该页关闭的时候,把它所占用的资源释放,应该如何实现呢?