将mysql表导出到ms Access表的最快/安全方法

将mysql表导出到ms Access表的最快/安全方法,mysql,ms-access,import,export,Mysql,Ms Access,Import,Export,我正在寻找一种方法,将一些MySql表导出到MsAccess数据库的其他表中(我说的是一百万条记录表…) 我唯一想到的两种方法是: 从myadmin或toad导出csv文件,然后将其导入access数据库 直接从Toad创建“Access数据库导出” 我发现第一种方法速度更快,但数据完整性不太安全,而第二种方法非常适合数据完整性,但速度非常慢。。。有人知道其他的方法吗 谢谢 A.如果您拥有对MySQL的ODBC访问权限,并且您的服务器位于您的网络上,则可以从access中导入其表。我认为菜单选项

我正在寻找一种方法,将一些MySql表导出到MsAccess数据库的其他表中(我说的是一百万条记录表…)

我唯一想到的两种方法是:

  • 从myadmin或toad导出csv文件,然后将其导入access数据库

  • 直接从Toad创建“Access数据库导出”

  • 我发现第一种方法速度更快,但数据完整性不太安全,而第二种方法非常适合数据完整性,但速度非常慢。。。有人知道其他的方法吗

    谢谢
    A.

    如果您拥有对MySQL的ODBC访问权限,并且您的服务器位于您的网络上,则可以从access中导入其表。我认为菜单选项是“文件|获取外部数据|导入”

    对于“文件类型”,选择“ODBC数据库”。您可能需要创建一个新的DSN名称


    我记不起ODBC驱动程序通常是默认安装还是单独安装。我认为它们是默认安装的,但我可能错了。

    在Web服务器上使用MySQL数据库运行Access前端应用程序的分步指南(您不需要导入表,您可以在Web服务器上使用msaccess应用程序):

    如果您正在运行MsAccess,我想您正在使用windows

  • 安装MySQL ODBC 5.1驱动程序(连接器)
  • 打开win机器上的控制面板
  • 管理工具(如果是Vista或Seven,请搜索ODBC)
  • 设置数据源ODBC
  • 系统DSN
  • 根据服务器的不同,查找服务器名称或IP、查找SSH数据库连接(或类似内容)可能会有一些困难。例如,请阅读NetSol的常见问题解答:

    完成此操作后,在MsAccess中: 1.文件夹 2.外部数据源 3.链接表

    如果要从MsAccess导出到MySQL,可以在access中创建一个表单,在其上放置一个按钮,然后在VBA中为OnClick()事件创建此子项:


    有时,在运行非英语windows时,可能会出现错误2507,将“ODBC数据库”更改为“ODBC”(适用于法语)

    感谢托尼写了这么精彩的省时脚本。因为我用前缀“tbl”命名我的表,所以我修改了代码,这样它将只导出那些表(而不是外观怪异的表):


    谢谢,让我给你发一些问题。“对MySql的ODBC访问”是ODBC的一些扩展吗?我必须安装它吗?我在一台独立的机器上工作,access数据库在我的Windows PC上,mysql数据库在另一台linux机器上……非常有用:“将“ODBC数据库”改为“ODBC”(与法语一起使用)“c'ce que j'ai trouvéavec mon xp en Francasis”。
    Dim sTblNm As String
    Dim sTypExprt As String
    Dim sCnxnStr As String, vStTime As Variant
    Dim db As Database, tbldef As DAO.TableDef
    
    On Error GoTo ExportTbls_Error
    
    sTypExprt = "ODBC Database"
    sCnxnStr = "ODBC;DSN=DSNname;UID=userOnServer;PWD=pwdOnServer"
    vStTime = Timer
    Application.Echo False, "Visual Basic code is executing."
    
    Set db = CurrentDb()
    
    For Each tbldef In db.TableDefs
    Debug.Print tbldef.Name
    sTblNm = tbldef.Name
    DoCmd.TransferDatabase acExport, sTypExprt, sCnxnStr, acTable, sTblNm, sTblNm
    Next tbldef
    
    MsgBox "Done!"
    On Error GoTo 0
    SmoothExit_ExportTbls:
    Set db = Nothing
    Application.Echo True
    Exit Sub
    
    ExportTbls_Error:
    MsgBox "Error " & Err.Number & " (" & Err.Description & ") in procedure ExportTblsODST"
    Resume SmoothExit_ExportTbls
    
    Private Sub Command0_Click()
    Dim sTblNm As String
    Dim sTypExprt As String
    Dim sCnxnStr As String, vStTime As Variant
    Dim db As Database, tbldef As DAO.TableDef
    Dim str As String
    
    On Error GoTo ExportTbls_Error
    
    sTypExprt = "ODBC Database"
    sCnxnStr = "ODBC;DSN=proxmox decaoriginal;UID=matantan;PWD=majadero5"
    vStTime = Timer
    Application.Echo False, "Visual Basic code is executing."
    
    str = "tbl"
    
    Set db = CurrentDb()
    
    For Each tbldef In db.TableDefs
    Debug.Print tbldef.Name
    If Left(tbldef.Name, 3) = str Then
    sTblNm = tbldef.Name
    DoCmd.TransferDatabase acExport, sTypExprt, sCnxnStr, acTable, sTblNm, sTblNm
    Else
    End If
    Next tbldef
    
    MsgBox "Done!"
    On Error GoTo 0
    SmoothExit_ExportTbls:
    Set db = Nothing
    Application.Echo True
    Exit Sub
    
    ExportTbls_Error:
    MsgBox "Error " & Err.Number & " (" & Err.Description & ") in procedure  ExportTblsODST"
    Resume SmoothExit_ExportTbls
    End Sub