适用于:Access 2013 | Access 2016
标识 Microsoft Access 数据库引擎可以连接到的任何外部数据库中的表,例如 dBASE 或 Paradox 数据库或外部 Microsoft Access 数据库引擎数据库。
语法
标识目标表
[SELECT |INSERT] INTO destination IN { path |[“ path ” “ type ”] |[“” [ type;DATABASE = path ]]}
标识源表
FROM tableexpression IN { path |[“ path ” “ type ”] |[“” [ type;DATABASE = path ]]}
包含 IN 子句的 SELECT 语句具有以下部分:
| Part | 说明 |
|---|---|
| 目的地 | 在其中插入数据的外部表的名称。 |
| tableexpression | 从中检索数据的表的名称。 该参数可以是单个表名、存储查询或者从 INNER JOIN、LEFT JOIN 或 RIGHT JOIN 产生的组合结果。 |
| path | 包含 table 的目录或文件的完整路径。 |
| type | 用于创建 table 的数据库类型的名称(如果数据库不是 Microsoft Access 数据库引擎数据库,例如 dBASE III、dBASE IV、Paradox 3.x 或 Paradox 4.x)。 |
备注
使用 IN 一次仅连接到一个外部数据库。
某些情况下,path 参数引用包含数据库文件的目录。 例如,在使用 dBASE、Microsoft FoxPro 或 Paradox 数据库表时, path 参数指定包含 .dbf 或 .db 文件的目录。 表文件名是从 destination 或 tableexpression 参数得到的。
若要指定非 Microsoft Access 数据库引擎数据库,请在名称的后追加一个分号 (;),并用单引号 (' ') 或双引号 (" ") 引起来。 例如,'dBASE IV;' 或 "dBASE IV;" 都是可接受的。
还可以使用 DATABASE 保留字来指定外部数据库。 以下的各行指定了相同的表:
…FROM Table IN "" [dBASE IV; DATABASE=C:\DBASE\DATA\SALES;];
…FROM Table IN "C:\DBASE\DATA\SALES" "dBASE IV;"
示例
以下示例演示如何使用 IN 子句从外部数据库检索数据。 在每个示例中,都假设外部数据库中存储了一个假想的 Customers 表。
Microsoft Access 数据库引擎数据库
SELECT CustomerID
FROM Customers
IN OtherDB.mdb
WHERE CustomerID Like "A*";
dBASE III 或 IV
若要从 dBASE III 表中检索数据,请用 "dBASE III;" 替代 "dBASE IV;"。
SELECT CustomerID
FROM Customer
IN "C:\DBASE\DATA\SALES" "dBASE IV;"
WHERE CustomerID Like "A*";
使用数据库语法的 dBASE III 或 IV
SELECT CustomerID
FROM Customer
IN "" [dBASE IV; Database=C:\DBASE\DATA\SALES;]
WHERE CustomerID Like "A*";
Paradox 3.x 或 4.x
若要从 Paradox 版本 3.x 表中检索数据,请用 "Paradox 3.x;" 替代 "Paradox 4.x;"。
SELECT CustomerID
FROM Customer
IN "C:\PARADOX\DATA\SALES" "Paradox 4.x;"
WHERE CustomerID Like "A*";
使用 Database 语法的 Paradox 3.x 或 4.x
SELECT CustomerID
FROM Customer
IN "" [Paradox 4.x;Database=C:\PARADOX\DATA\SALES;]
WHERE CustomerID Like "A*";
Microsoft Excel 工作表
SELECT CustomerID, CompanyName
FROM [Customers$]
IN "c:\documents\xldata.xls" "EXCEL 5.0;"
WHERE CustomerID Like "A*"
ORDER BY CustomerID;
工作表中的命名区域
SELECT CustomerID, CompanyName
FROM CustomersRange
IN "c:\documents\xldata.xls" "EXCEL 5.0;"
WHERE CustomerID Like "A*"
ORDER BY CustomerID;
另请参阅
- 访问开发人员论坛
- 访问 support.office.com 上的帮助
- 访问 answers.microsoft.com 上的帮助
- 访问 UtterAccess 上的论坛
- 访问开发人员和 VBA 编程帮助中心 (FMS)
- 访问 StackOverflow 上的帖子
支持和反馈
有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。