首先介绍如何将现有 XML 文件导入到 Access 数据库:
复制代码
Const acAppendData = 2
Set objAccess = CreateObject("Access.Application")
objAccess.OpenCurrentDatabase "C:\Scripts\Test.mdb"
objAccess.ImportXML "c:\l", acAppendData
在此脚本中,假定该 XML 文件具有一个外部元素标记(例如 Inventory),该标记引用数据库 C:\Scripts\Test.mdb 中的表。(换句话说,在该数据库中有一个名为 Inventory 的表。)这意味着您的 XML 文件开头可能类似如下代码:
复制代码
<?xml version="1.0" encoding="UTF-8"?>
    <Inventory>
        <ComputerName>atl-fs-01</ComputerName>
因为我们要将 XML 数据添加到该表中,所以我们在脚本中首先定义名为 acAppendData 的常量并将其值设为 2。随后将使用该常量告诉脚本导入数据并将其添加到现有的表中。
我们早就知道您将提出问题:是的,还有其他导入数据的方法。例如,可以定义名为 acStructureOnly 的常量并将其值设为 0。在这种情况下,Access 将检查该 XML 文件并创建模仿该文件结构的表。但却不会导入任何数据;我们将在数据库中只获得一张空表。
或者,可以定义名为 acStructureAndData 的常量并将其值设为 1。如果是这样,Access 将不但会创建新表,而且会将数据导入到该表中。根据数据本身的特点,这么做非常有效。例如,Access 将创建一个表,并在默认情况下,将每个字段的数据类型设置为文本。如果需要将数据存储在备注日期字段中,这就会是个问题。这仅仅是您必须按逐个文件进行确定的内容。
提示:为了以防万一,我们建议先构建数据库表,然后添加数据。为此,可从 XML 文件导入结构,然后在 Access 中打开新表格并根据需要更改字段类型。完成之后即可添加数据,而不会有任何问题。
在定义了常量后,我们创建 Access.Application 对象的实例,然后调用 OpenCurrentDatabase 方法打开文件 C:\Scripts\Test.mdb
复制代码
Set objAccess = CreateObject("Access.Application")
objAccess.OpenCurrentDatabase "C:\Scripts\Test.mdb"
现在我们只需要调用 ImportXML 方法并向其传递两个参数:要导入的 XML 文件的路径 (C:\l) 和导入类型(由常量 acAppendData 指定):
复制代码
objAccess.ImportXML "c:\l", acAppendData
就是这样。等几秒钟(取决于该 XML 文件的大小),然后数据就会导入到 Microsoft Access 中。然后即可从中随心所欲地处理这些数据。我们插一句,可以将数据导回为 XML
您需要 XML 版本的 Access 表吗?好啊,为什么不试试:
复制代码
Const acExportTable = 0
Set objAccess = CreateObject("Access.Application")
objAccess.OpenCurrentDatabase "C:\Scripts\Test.mdb"
objAccess.ExportXML acExportTable,"Inventory","c:\l"
我们仍然从定义常量开始(在本例中是名为 acExportTable 的常量),然后将其值设为 0。为何要使用该常量呢?很简单:因为我们要导出存储在表中的全部数据。或者,我们可以选择从查询、报表、函数或其他一些 Access 元素导出数据。事实上,您可以使用下表列出的任何常量(及其对应的值):
常量
acExportForm
2
acExportFunction
10
acExportQuery
1
acExportReport
3
acExportServerView
access是什么意思啊了7
acExportStoredProcedure
9
acExportTable
0
定义了常量后,我们创建 Access.Application 对象的实例,打开数据库,然后调用 ExportXML 方法:
复制代码
objAccess.ExportXML acExportTable,"Inventory","c:\l"
在此示例脚本中,我们在方法调用中使用了三个参数:
acExportTable:该常量指示我们将从表中导出数据。
Inventory:要导出的表的名称。
C:\l:我们要创建的 XML 文件的路径。如果该文件已存在,默认情况下 Access 则会将其覆盖。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。