1、我远程打开连接端口1433,为什么VB连接不上?
2、还有,可不可以改SQL默认的端口?如果改了端口,VB的连接代码怎么写?
3、VB连接数据库可不可以写段代码测试,如果没有连接成功则给出提示?

解决方案 »

  1.   

    你是怎么连的?看看防火墙是否开放端口
    vb中用ADO连接的例子:
    '引用ADO("工程"/"引用"/Microsoft ActiveX Data Objects 2.X Library)
    Private Sub Command1_Click()    Dim cn As New ADODB.Connection    cn.ConnectionString = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=登陆用户名;Password=登录密码;Initial Catalog=数据库名;Data Source=服务器别名"
        cn.Open
    End Sub
      

  2.   

    默认是1433,你默认的也连不上改成其它的不一样连不上?
    一是看是否有放火墙在起作用,二是看你安的是SQL数据库的什么版本,开发版是不能远程连的。
      

  3.   

    、我远程打开连接端口1433,为什么VB连接不上?
    //SQL放局域网而已,如果是VPN你可以连,但是如果你只是固定IP.确定两边不能允许防火墙2、还有,可不可以改SQL默认的端口?如果改了端口,VB的连接代码怎么写?
    //可改
    例如,没有改断口的连接字符为
    Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=pubs;Data Source=192.168.1.1
    把断口改成2000,连接字符变成
    Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=pubs;Data Source=192.168.1.1,2000 -->Data Source=192.168.1.1,2000 就是加,再加断口号而已
    3、VB连接数据库可不可以写段代码测试,如果没有连接成功则给出提示?
    //参考下面
    Option Explicit
    Public Rs As New ADODB.Recordset
    Public Conn As New ADODB.ConnectionPrivate Sub Command1_Click()
       If Make_Conn = True Then
          MsgBox "连接成功"
       Else
          MsgBox "连接失败"
       End If
    End SubPublic Function Make_Conn() As Double
       Dim strConn As String
       On Error GoTo err
       strConn = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=Northwind;Data Source=192.168.0.15"
       Conn.CursorLocation = adUseClient
       Conn.CommandTimeout = 10
       Conn.Open strConn
       Make_Conn = True
       Exit Function
    err:
       Make_Conn = False
    End Function
      

  4.   

    首先你要在你的放火墙或路由器上映射1433端口;
    其二:连接字符串中Server=10.10.10.*,你改后的端口号
      

  5.   

    先在客户机上试试telnet 你的SQL Server名称(或者ip) 1433
    例如 telnet 192.168.0.1 1433
    假如telnet窗口左上角有个光标在闪动表示1433正常。否则检查防火墙或者是否开放了1433。