TransferSQLDatabase 操作[17]
在 Microsoft Access 项目中使用 TransferSQLDatabase 操作,可以将一个 Microsoft SQL Server 7.0 或更高版本的数据库传输到另一个 SQL Server 7.0 或更高版本的数据库。
TransferDatabase 操作
使用 TransferDatabase 操作,可以在当前的 Microsoft Access 数据库 (.mdb) 或 Microsoft Access 项目 (.adp) 与其他数据库之间导入和导出数据。对于 Access 数据库,还可以从其他数据库中向当前 Access 数据库中链接表。通过链接的表,可以在保持表在其他数据库中位置不变的情况下访问那个表的数据。
参数 |
说明 |
迁移类型 |
要迁移的类型。在“宏”窗口“操作参数”部分的“迁移类型”框中选择“导入”、“导出”或“链接”。默认值为“导入”。 注意 Access 项目 (.adp) 不支持“链接”迁移类型。 |
数据库类型 |
导入来源、导出目的或链接目的数据库的类型。在“数据库类型”框中选择 Microsoft Access 或其他数据库类型之一。默认值为 Microsoft Access。 |
数据库名称 |
导入、导出或链接的数据库的名称。名称中包含完整的路径。该参数是必需参数。 对于像 FoxPro、Paradox 和 dBASE 这样将每个表保存为单独文件的数据库类型,输入文件所在的目录。然后在“源”参数(用于导入或链接)或“目标”参数(用于导出)中输入文件名。 |
对象类型 |
要导入或导出的对象的类型。如果选择的“数据库类型”参数是 Microsoft Access,则可以在“对象类型”框中选择“表”、“查询”、“窗体”、“报表”、“宏”、“模块”、“数据访问页”、“服务器视图”、“图表”、“存储过程”或“函数”。默认值为“表”。如果选择其他类型的数据库,或者在“迁移类型”对话框中选择“链接”,则该参数会被忽略。 若要将选择查询导出到 Access 数据库中,请在该参数中选择“表”来导出查询的结果集,并选择“查询”来导出查询自身。如果要将选择查询导出到其他类型的数据库中,则该参数会被忽略,而且会导出查询的结果集。 |
源 |
要导入、导出或链接的表、选择查询或 Access 对象的名称。对于像 FoxPro、Paradox 或 dBASE 这样的数据库类型,该参数即文件名。文件名中含有扩展名(如 .dbf)。该参数是必需参数。 |
目标 |
目标数据库中导出、导入或链接到的表、选择查询或 Access 对象的名称。对于像 FoxPro、Paradox 或 dBASE 这样的数据库类型,文件名中含有扩展名(如 .dbf )。该参数是必需参数。 如果在“迁移类型”参数中选择“导入”,而在“对象类型”参数选择“表”,则 Access 将创建一个包含导入表数据的新表。 在导入表或其他对象的时候,如果对象名称与已有的名称冲突,则 Access 会在名称后添加一个数字。例如,如果导入一个“雇员”表,而名为“雇员”的表已存在,则 Access 会将导入表或其他对象重命名为“雇员1”。 如果要导出到 Access 数据库或其他类型的数据库,则 Access 将自动替换已有的同名表或其他对象。 |
仅结构 |
指明是否忽略数据而仅导入或导出数据库中表的结构。请为该参数选择“是”或“否”,默认值为“否”。 |
说明 可以在 Access 和其他类型数据库之间导入或导出表。还可将 Access 选择查询导出到其他类型的数据库中。Access 可以以表的形式导出查询结果集。如果两个数据库均为 Access 数据库,则在两个数据库之间可以导入或导出所有的 Access 数据库对象。
如果从另一个 Access 数据库 (.mdb) 中导入的表是一个链接表,则在导入之后,该表仍处于链接状态。也就是说,导入的是链接,而不是表本身。
如果要访问的数据库需要密码,则在运行宏的时候将出现一个对话框。请在该对话框中键入密码。
TransferDatabase 操作与在“数据库”窗口中指向“文件”菜单上的“获取外部数据”或“导出”,然后单击“导入”或“链接表”的效果是类似的。可以用这些命令来选择数据源,如 Access 或其他类型的数据库、电子表格或文本文件。在选定数据库之后,将出现一个或多个对话框;根据要导入、导出或链接的数据库的不同,可以在对话框中选择要导入或导出的对象类型(用于 Access 数据库)、对象名称以及其他选项。TransferDatabase 操作的参数反映了这些对话框中的选项。
如果要为链接的 FoxPro 或 dBASE 表提供索引信息,请先指向“文件”菜单上的“获取外部数据”并单击“链接表”链接到 FoxPro 或 dBASE 表,然后在该命令的对话框中指定索引。Access 在特殊信息文件(.inf 文件)中存储索引信息,该文件位于 Microsoft Office 文件夹中(路径为 C:\Program Files\Microsoft Office\Office 10)。然后即可删除与链接表的链接了。下次使用 TransferDatabase 操作链接该 FoxPro 或 dBASE 表时,Access 将使用您已指定的索引信息。
注意 如果要查询或筛选链接的表,则查询或筛选要区分大小写。
若要在 Microsoft Visual Basic 中运行 TransferDatabase 操作,请使用 DoCmd 对象的 TransferDatabase 方法。
TransferSpreadsheet 操作
可以使用 TransferSpreadsheet 操作在当前的 Microsoft Access 数据库 (.mdb) 或 Access 项目 (.adp) 和电子表格文件之间导入或导出数据。也可将 Excel 电子表格中的数据链接到当前的 Access 数据库中。通过链接的电子表格,您可以用 Access 查看和编辑电子表格数据,同时还允许在 Microsoft Excel 电子表格程序中对数据进行完全访问。还可以链接 Lotus 1-2-3 电子表格文件中的数据,但这些数据在 Access 中是只读的。
操作参数 |
说明 |
迁移类型 |
转换的类型。请在“宏”窗口“操作参数”节的“迁移类型”框中选择“导入”、“导出”或“链接”。默认选择为“导入”。 注意 Access 项目 (.adp) 不支持“链接”类型。 |
电子表格类型 |
用于指明所要导入、导出或链接的电子表格的类型。您可以在选项框中从多个电子表格类型中选择一个。类型的默认值是“Microsoft Excel 8-10”。 注意 可以从 Lotus .WK4 文件中导入和链接(以只读方式)数据,但不能将 Access 数据以这种电子表格格式导出。Access 也不支持用此操作从 Lotus.WKS 或 Excel 2.0 版本的电子表格导入、导出或链接数据。如果要从 Excel 2.0 版本或 Lotus .WKS 格式的电子表格中导入或链接数据,则必须在将数据导入或链接到 Access 以前,将电子表格转换成 Excel 或 Lotus 1-2-3 的较高版本。 |
表名 |
用于指明 Access 表的名称。该表用于导入电子表格数据、从该表导出电子表格数据或链接电子表格数据。您可以键入用于导出数据的 Access 选择查询的名称,该参数是必选参数。 如果选择迁移类型参数为“导入”,而表已经存在,则 Access 将电子表格数据追加到该表。否则,Access 创建一个新表来存放电子表格数据。 在 Access 中, 当执行 TransferSpreadsheet 操作时,不允许使用 SQL 语句来指定要导出的数据。相反,要先创建一个查询,并在“表名称”参数中指定查询的名称。 |
文件名 |
用于指明所要导入、导出或链接的电子表格文件的名称。该名称包括完整路径。该参数为必选参数。 当您从 Access 导出数据时,Access 将创建一个新的电子表格。如果导出数据的文件名与现有的电子表格同名,则 Access 将取代现有的电子表格,除非是导出到 Microsoft Excel 5.0 版或更高版本的工作簿中。在这种情况下,Access 将导出数据复制到工作簿中的下一个可用的新工作表中。 如果是从 Excel 5.0 版或更高版电子表格中导出或链接数据,您可以用“范围”参数指定一个特定的工作表。 |
有字段名称 |
用于指明电子表格的第一行是否包含字段名。如果选择“是”,在导入或链接电子表格数据时,Access 将使用该行的名称作为 Access 表的字段名。如果选择“否”,Access 则将第一行作为普通的数据。该参数的默认值为“否”。 当将 Access 表或选择查询导出到电子表格时,无论您是否选择了该参数,字段名都将被插入到电子表格的第一行中。 |
范围 |
用于指明导入或链接的单元格范围。在导入或链接整个电子表格时请将该参数留空。可键入电子表格范围的名称,或指定导入或链接单元的范围,如 A1:E25(注意 A1..E25 的语法格式在 Access 97 或更高版本中无效)。如果要导入或链接到 Excel 5.0 或更高版本工作表,可以在范围前加前缀:工作表的名称加上感叹号,如 Budget!A1:C7。 注意 若是将数据导出到电子表格,则必须将该参数留空。如果输入了一个范围,则导出操作失败。 |
说明 可以将 Access 选择查询的数据导出到电子表格中。Access 将像导出表一样导出查询。
在 Access 表中添加的电子表格数据必须和表结构兼容。
该操作等同于在“数据库”窗口中指向“文件”菜单中的“获取外部数据”子菜单或“导出”命令,然后选择“导入”或“链接表”这一系列动作。可用这些命令来选择数据源,如 Access 或其他类型的数据库、电子表格或文本文件。在选择了一个电子表格后,将出现一系列的对话框,或一个可运行的 Access 向导,在其中您可以选择电子表格的名称和其他选项。TransferSpreadsheet 操作的参数与这些对话框或向导中的选项相对应。
注意 如果查询或筛选一个链接电子表格,则该查询或筛选区分大小写。
如果链接到一个以“编辑”方式打开的 Excel 电子表格中,Access 将等到该电子表格退出了“编辑”方式之后才能完成链接,这里并没有时间限制。
要在VB中执行 TransferSpreadsheet 操作,请使用 DoCmd 对象的 TransferSpreadsheet 方法。