我用 Navicat Lite 创建了一个Mysql的数据库,第一次用mysql,居然连都连不上。
Private Sub Command1_Click()
    ' 定义并创建数据库连接和访问对象
    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    ' 定义 SQL 语句变量
    Dim sql As String    ' 初始化数据库连接变量
    db_host = "localhost"
    db_user = "root"
    db_pass = "asdf"
    db_data = "financing"    strCn = "DRIVER={MySQL ODBC 5.1 Driver};" & _
            "SERVER=" & db_host & ";" & _
            "DATABASE=" & db_data & ";" & _
            "UID=" & db_user & ";PWD=" & db_pass & ";" & _
            "OPTION=3;stmt=SET NAMES GB2312"    ' 连接数据库
    cn.Open strCn
    cn.CursorLocation = adUseClient    ' 访问表users
    sql = "select * from users"
    rs.Open sql, cn
    MsgBox rs.RecordCountEnd Subcn.Open strCn 居然提示未发现数据源名称并且为指定默认驱动程序

解决方案 »

  1.   

    MySQL ODBC 5.1 Driver有问题
      

  2.   

    strCn 加上 Provider=MSDASQL 试试
    ---------------------------------------
    "Provider=MSDASQL;DRIVER={MySQL ODBC 5.1 Driver}; SERVER=server; 
    DATABASE=database; UID=user; PWD=password""MSDASQL" is the provider name for "Microsoft OLE DB Provider for ODBC", and 
    "Driver" tells it which ODBC driver to use.
      

  3.   

    先创建一个系统DNS,配置好和MYSQL的链接,然后用下面的方法。这个是数据源的方法Option Explicit
    Public cnn As New ADODB.Connection
    Dim cnnstr As String
    Sub main()
        'cnnstr = "Provider=MSDASQL.1;Persist Security Info=False;User ID=cpc;Data Source=CPC;Initial Catalog=cpc"
        cnnstr = "Provider=MSDASQL.1;Password=123;Persist Security Info=True;User ID=ABC;Data Source=ABC;Initial Catalog=ABC"
        cnn.ConnectionString = cnnstr
        cnn.Open
    If Err.Number = 0 Then Form1.Show
    End Sub也可以用
    cnn.ConnectionString = "Driver={MySQL ODBC 5.1 Driver};Server=localhost;Database=cpc; User=cpc;Password=123;Option=3;"
      

  4.   


    未发现数据源名称并且为指定默认驱动程序这个错误是因为mysql没装好呢,还是设置有什么问题?
      

  5.   

    mysql-connector-odbc-5[1].1.5-win32.msi安装这个。
      

  6.   

    应该是mysql 的 odbc驱动没装好吧。重新装一下再试试。连接串都大同小异。connectionstrings网站有全部连接串信息。
      

  7.   


    请问vb打包mysql 的时候需要打包那些文件呢?
    可以不装客户端吗?
      

  8.   


    MYSQL C API 访问程序(更新升级版本) 
    http://blog.csdn.net/hzhxxx/archive/2010/12/27/6100752.aspx