none
连接SqlServer时提示“超时时间已到,在操作完成之前超时时间已到或服务器为响应” RRS feed

  • 问题

  • 大家好  请教:

     Public dbconnection As SqlClient.SqlConnection
     Public dbconnectionstring As String

        Public Sub opendbconnection()
           dbconnectionstring = "Data Source=JSJ;Database=sxfx; user id=sa; password=sql1;Persist Security Info=false"
           dbconnection = New SqlClient.SqlConnection(dbconnectionstring)
           Try
                dbconnection.Open()
            Catch ex As Exception
                MsgBox(ex.Message.ToString)
            End Try
        End Sub

     打开数据库时出错  在dbconnection.Open()出提示“超时时间已到,在操作完成之前超时时间已到或服务器为响应”      

    大家帮忙看看 谢谢了   


    昨夜西风凋碧树,独上高楼,望尽天涯路!
    • 已移动 Sheng Jiang 蒋晟 2010年7月31日 4:53 (发件人:.NET Framework 一般性问题讨论区)
    2010年7月28日 6:41

全部回复

  • 你好

    或者你可以查看一下你的 CONNCECTION STRING 是不是正確的和, 你的SQL SERVER 接不接你這台電腦的連接

    看來你的CODE 是沒有關掉這個CONNECTION, 不知道會不會因為太多CONNECTION 所以拒絕接受新的CONNECTION

    或者你可以加一個FINAL STATEMENT

    Try
                dbconnection.Open()
            Catch ex As Exception
                MsgBox(ex.Message.ToString)

    Finally

    dbconnection.Close()

            End Try

    Please correct me if my concept is wrong


    Chi
    2010年7月28日 7:46
  • 你好 请先检查JSJ这台机器是否可以访问,比如1433端口是否可以访问,这台机器是否有多个SQL Server的实例,请加上对应的实例名,以及相应端口,同时检查服务器是否开启了TCP/IP协议

    你先试下将连接字符串更改为

    dbconnectionstring = "Data Source=JSJ;Initial Catalog=sxfx;User Id=sa;Password=sql1;“


    I see you~,.NET交流群71840452 微软中文论坛同城社区成都QQ群:74268428http://hi.baidu.com/1987raymondMy Blog~~~
    2010年7月28日 8:46
  • 你好 谢谢  应该不会是dbconnection已经打开  因为我这个是登陆系统时访问数据库来验证用户账号的   是第一次连接数据库


    昨夜西风凋碧树,独上高楼,望尽天涯路!
    2010年7月28日 9:18
  • 你好  谢谢    用这个dbconnectionstring = "Data Source=JSJ;Initial Catalog=sxfx;User Id=sa;Password=sql1; 还是同样的错误。别人的程序可以顺利访问数据库的  
    昨夜西风凋碧树,独上高楼,望尽天涯路!
    2010年7月28日 9:28
  • 楼主,观察到您的Data Source是“JSJ”, 这通常是指某一个机器名。请您在  SQLSERVER 配置管理器  中查看一下 Named Pipes 是否启用,否则不能保证通过“Data Source=JSJ” 可以正确连接。

    同时建议您在命令提示符界面中通过 “telnet  127.0.0.1 1433” 命令来检查SQLSERVER服务端口是否打开。 这里先假设您的SQLSERVER服务器的IP是127.0.0.1。

    vista、2008、2008R2、windows7 中的telnet命令需要在  控制面板--程序与功能--打开或关闭windows功能 中勾选 "telnet客户端" ,确定安装。

    2010年7月28日 13:20
  • 如果你真的确定没有其它问题,那么请这样试试看:

    cmd.CommandTimeout = 设定一个时间,或者改成0(表示没有时间连接限制);

    2010年7月29日 1:21
  • 你好 谢谢  其它的确是没问题  现在问题解决了  我把服务器名换成IP地址就可以了  不知道这是什么原因 
    昨夜西风凋碧树,独上高楼,望尽天涯路!
    2010年7月29日 3:15
  • 你好 谢谢  问题已经解决  我把服务器名换成IP地址就可以了  不知道是为什么 
    昨夜西风凋碧树,独上高楼,望尽天涯路!
    2010年7月29日 3:16
  • 不在同一网域,通过名字访问不到。
    2010年7月30日 9:03
  • 请检查1433端口是否打开。
    Sean Liu
    2010年12月31日 2:35