一开始我用
server=ip;UID=myid;PWD=mypw;database=mydb
去连接,速度很快,但是,过一会就会出现错误:An error has occurred while establishing a connection to the server.  When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server) 刷新一下,又正常,继续点击含有连接数据库的页面,有时候几十下,有时候可能多一点,又会出现上面的错误
我网上查了一下原因,发现连接远程sql2005的应该
Data Source=ip\\SQLEXPRESS;InitialCatalog=mydb;UserID=myid;Password=mypw
这样连接才不会出错,我换成新的连接方法,这回行了,一直都不会出错,但我发现,速度却比第一种方法慢了,有时候也挺快的,但是经常出现一个页面等了很久才打开的情况,以前不会的啊!!晕,为什么会这样??麻烦高手们都帮一下啊!!谢谢了!~~

解决方案 »

  1.   

    SQL Server 2005配置有问题
      

  2.   

    Data Source=ip\\SQLEXPRESS 正确的
      

  3.   

    Data Source=ip\\SQLEXPRESS直接 指定明确的服务器上的数据库实例 当然比你直接指定IP快:)出现你这样的情况 有可能是你的服务器 负载不行.或者说是你的程序上有问题. 比如没有及时的释放 链接 dataset对象等等.多用户使用和你一个人一台机器做开发测试是不一样的 应该做个压力测试
      

  4.   

    to:hertcloud(·£孙子兵法£·) Data Source=ip\\SQLEXPRESS;我就是这么用的啊,指明了数据库实例的~~“或者说是你的程序上有问题. 比如没有及时的释放 链接 dataset对象等等.”
    这个不会的,我很注意释放掉连接和对象的~~而且我说的那两种情况,是在同一种环境下的,除了换了那句连接数据库的字符串之外,其它代码都没动过,一样的啊,为什么一个要么很快,要么出错,而一个,却是不出错,但经常变慢?....
    to:wonderfuly() 
    你说的“SQL Server 2005配置有问题”这个不好说了,sql2005是远程的,并且我管不了,无法进去看里面是怎样配置的,如果是配置问题,哪大概具体是那里的问题?我跟他们的管理员建议一下~~