我写的连接代码如下:
Private Sub sjk_connect()
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim strCn As String
Dim db_host As String
Dim db_user As String
Dim db_pass As String
Dim db_data As String
Dim sql As String
db_host = "localhost"
db_user = "root"
db_pass = "123456"
db_data = "yanyan"
strCn = "DRIVER={MySQL ODBC 3.51 Driver};" & _
        "SERVER=" & db_host & ";" & _
        "DATABASE=" & db_data & ";" & _
        "UID=" & db_user & ";PWD=" & db_pass & ";" & _
        "OPTION=3;stmt=SET NAMES GB2312"
cn.Open strCn
If cn.State = 1 Then
MsgBox "连线成功!"
Else
MsgBox "无法连线!"
End If
cn.Close
End Sub为什么运行的时候没有反应呢

解决方案 »

  1.   

    肯定是strCn = "DRIVER={MySQL ODBC 3.51 Driver};" & _ 
            "SERVER=" & db_host & ";" & _ 
            "DATABASE=" & db_data & ";" & _ 
            "UID=" & db_user & ";PWD=" & db_pass & ";" & _ 
            "OPTION=3;stmt=SET NAMES GB2312" 
    这段出错误啦!仔细看看。
      

  2.   

    给你个正确的连接方法Public Function ConnData_us() As String '连接数据库函数    ConnData_us = "DRIVER={MySQL ODBC 3.51 Driver};" _
                            & "SERVER=localhost;" _
                            & "Port=3306;" _
                            & "DATABASE=test_ch_us;" _
                            & "UID=ch;PWD=123456; OPTION=3"              
    End Functionlocalhost:本机
    test_ch_us:数据库名
    ch:mysql的用户名
    123456:密码
      

  3.   

    "UID=" & db_user & ";PWD=" & db_pass & ";" & _ 
    去掉红色部分,连接成功
      

  4.   

    "UID=" & db_user & ";PWD=" & db_pass & ";" & _ 刚才没写好,这样
      

  5.   

    我晕,你的代码没有问题
    我测试的时候没有付你的值。直接在值里面修改我的值运行的。
    你的问题:
    1 添加部件ADO
    2 你的MYSQL是否正常运行。
    检查上面2个问题