【问题标题】:Connecting Ms Access Db to Mysql through Vba通过Vba连接Ms Access Db到Mysql
【发布时间】:2015-08-19 11:07:53
【问题描述】:

我一直在尝试将mysql database 连接到ms Access,但没有结果。我个人认为我没有正确使用DAo.Connectionworkspace。当我设置mySqlCon 时,我不断收到 3001 连接错误。我想我的论点没有正确设置,但我遵循了here 的示例。

Function connectingMySql()
   Dim mySqlCon As Dao.Connection
   Dim wrkODBC As Workspace

   Set wrkODBC = CreateWorkspace("newODBCWorkspace", "admin", "", dbUseODBC)

   Set mySqlCon = wrkODBC.OpenConnection("connection1", , , "DRIVER={MYSQL ODBC 5.1 DRIVER};" _
   & "SERVER=testserver.com;port=3306;" _
   & "DATABASE=test;" _
   & "USER=root;" _
   & "PASSWORD=pass;" _
   & "Option=3;")
End Function

更多信息:

  • 运行 Ms Access 2003

【问题讨论】:

    标签: mysql vba server


    【解决方案1】:

    这个MSDN page 表示使用dbUseODBC 会导致运行时错误。

    Microsoft Access 2010 不支持 ODBCDirect 工作区。将类型参数设置为 dbUseODBC 将导致运行时错误。如果您想在不使用 Microsoft Access 数据库引擎的情况下访问外部数据源,请使用 ADO。

    试试Set wrkODBC = CreateWorkspace("newODBCWorkspace", "admin", "")

    【讨论】:

      【解决方案2】:

      经过一番努力,我修复了它。基本上我的论点哪里错了。现在我得到一个连接错误,这意味着参数错误已被修复。

      Function connectingMySql()
         Dim mySqlCon As Dao.Connection
         Dim wrkODBC As Workspace
      
         Set wrkODBC = CreateWorkspace("newODBCWorkspace", "admin", "", dbUseODBC)
      
         Set mySqlCon = wrkODBC.OpenConnection("DRIVER={MYSQL ODBC 5.1 DRIVER};" _
         & "SERVER=testserver.com;port=3306;" _
         & "DATABASE=test;" _
         & "USER=root;" _
         & "PASSWORD=pass;" _
         & "Option=3;")
      End Function
      

      【讨论】:

        猜你喜欢
        • 2013-04-18
        • 2020-10-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-08-13
        • 2014-06-15
        相关资源
        最近更新 更多