我有多个要导出到单个 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/