xml - 将多个 Access 表导出到单个 XML

标签 xml ms-access vba

我有多个要导出到单个 XML 文件中的 Microsoft Access 表。如何将表的顺序和层次结构操作成我想要的 XML 结构?本质上,我希望能够逆向导入 XML 过程,自动将数据分解到多个表中。我可以随意使用 VBA、SQL 和任何内置的导出函数。

最佳答案

我使用附件在大约五分钟内生成了一个 300 万行的嵌套 xml。

有两个关键项,

1) 一段简单的VB,

Public Function Export_ListingData()

    Dim objOtherTbls As AdditionalData

    On Error GoTo ErrorHandle
    Set objOtherTbls = Application.CreateAdditionalData
    objOtherTbls.Add "ro_address"
    objOtherTbls.Add "ro_buildingDetails"
    objOtherTbls.Add "ro_businessDetails"
    objOtherTbls.Add "ro_businessExtras"
    objOtherTbls.Add "ro_businessExtrasAccounts"
    objOtherTbls.Add "ro_businessExtrasAccom"
    objOtherTbls.Add "ro_businessExtrasAccom2"

    Application.ExportXML ObjectType:=acExportTable, _
                DataSource:="ro_business", _
                DataTarget:="C:\Users\Steve\Documents\Conversions\ListData.xml", _
                AdditionalData:=objOtherTbls
Exit_Here:
        MsgBox "Export_ListingData completed"
        Exit Function
ErrorHandle:
        MsgBox Err.Number & ": " & Err.Description
        Resume Exit_Here
End Function

2) 使用从主键到外键的连接链接关系管理器中的表。

如果没有关系,代码将生成顺序 xml 文件,如果有 主键之间的关系,您将收到 31532 错误并且数据导出将失败。

关于xml - 将多个 Access 表导出到单个 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10486948/

相关文章:

xml - 如何在 bash 脚本中将一个包含 '< >' 的文件附加到另一个文件

asp.net - 使用 AJAX 从 ASPX 站点检索 XML 数据

c# - 按属性对 XML 文件进行排序

java - 需要用JAVA/Oracle或MySQL替换复杂的MS Access

excel - 在 Excel 中反转过滤器选择

php - 响应XML包含 “2000 ”和 “20a0”字符

sql - Access 字段级别的唯一性

ms-access - Access VBA : SQL query causes UPDATE syntax error

VBA如何使用字典

xml - 将多个xml节点提取到数组中而不循环