【问题标题】:Mariadb and excel 2013 connection stringMariadb 和 excel 2013 连接字符串
【发布时间】:2016-12-24 12:30:56
【问题描述】:

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

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

数据库连接详细信息在两个系统上都是指示性的,我已经使用“ODBC 数据源管理器”“系统 DSN”选项卡中的“测试 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 位。

【问题讨论】:

    标签: excel mariadb


    【解决方案1】:

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

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

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

    【讨论】:

      猜你喜欢
      • 2013-09-15
      • 2017-05-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多