Mariadb和excel 2013连接字符串

时间:2016-08-17 18:09:37

标签: excel mariadb

我在Excel 2003上有一个工作连接,我在Excel 2013上尝试了相同的连接字符串,它不会连接返回的错误:

    [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified.

数据库连接详细信息在两个系统上都是正确的,我已经使用"测试DSN"测试了每个系统上的连接。 " ODBC数据源管理员"中的按钮"系统DSN"标签

    Connection successfully established

    Server information 10.1.9-MariaDB

我还尝试从两个系统ping数据库服务器,两个系统ping成功。

Excel 2013系统的连接字符串:

    Driver={MariaDB ODBC 2.0 Driver};Server=demo;Port=3306;Database=dbname;User=username;Password=password;Option=3

我的VB例程连接:

    Const CELL_DRIVER As String = "B2"
    Const CELL_HOST As String = "B3"
    Const CELL_PORT As String = "B4"
    Const CELL_USER As String = "B5"
    Const CELL_PASSWORD As String = "B6"
    Const CELL_DATABASE As String = "B7"
    Dim conn As ADODB.Connection
    '--
    ' Attempts to create database connection
    ' Returns:
    '   Database connection or Nothing if an error occurs
    '--
    Private Function DBconnect() As ADODB.Connection
        On Error GoTo errHandler

        If False Then
    errHandler:
            MsgBox Err.Description, vbCritical, "ERROR in connect"
            Set conn = Nothing
            Set DBconnect = Nothing
            Exit Function
        End If            
        If Not conn Is Nothing Then
            Set DBconnect = conn
            Exit Function
        End If
        Dim strDSN As String, objSheet As Worksheet
        Set objSheet = Application.Sheets("Database")
        strDSN = "Driver={" & objSheet.Range(CELL_DRIVER) & "}" _
               & ";Server=" & objSheet.Range(CELL_HOST) _
               & ";Port=" & objSheet.Range(CELL_PORT) _
               & ";Database=" & objSheet.Range(CELL_DATABASE) _
               & ";User=" & objSheet.Range(CELL_USER) _
               & ";Password=" & objSheet.Range(CELL_PASSWORD) _
               & ";Option=3"
        Set conn = New ADODB.Connection
        conn.ConnectionString = strDSN
        conn.Open
        Set DBconnect = conn
    End Function#

我已将端口3306添加到防火墙。我还尝试添加用户DSN。我也经历过这个页面...... http://helpdeskgeek.com/office-tips/excel-to-mysql/仍然没有成功。

我已经为MariaDB 2.0下载了最新的ODBC驱动程序,卸载了原始1.0驱动程序并安装了最新版本,遗憾的是除了Excel之外所有连接的行为都相同。

我尝试使用“工作簿连接”向导,这也是错误。建议欢迎。 Excel中显示的最新错误消息:

    [Microsoft][ODBC Driver Manager] The specified DSN contains an architectyure mismatch between the Driver and Application

我下载了64位版本的OBCD驱动程序,因为主机系统运行的是Windows 7 Professional 64位。

1 个答案:

答案 0 :(得分:0)

系统是64位系统,但是安装了64位ODBC驱动程序,Excel无法连接。

我为MariaDB安装了32位ODBC驱动程序并再次尝试连接,现在可以正常工作。

注意:我没有卸载原始的64位驱动程序,而且我没有对现有的ODBC配置做任何事情,而使设置引用了64位驱动程序。我所做的只是安装32位驱动程序,现在它可以工作。