0
我想设置一个访问数据库(Queries.accdb)将用于查询多个访问数据库作为表源。我可以通过硬编码来完成,但是当我尝试使用相对路径时,出现语法错误。我希望能够移动Queries.accdb。MS访问查询多个MS Access数据库与相对路径
当前文件结构:
- C:\ TEMP \ PB \ 28 \ A.accdb
- C:\ TEMP \ PB \ 28 \ B.accdb
- C:\ TEMP \ PB \ 28 \ Queries.accdb
- C:\ TEMP \ PB \ 29 \ A.accdb
- C:\ TEMP \ PB \ 29 \ B.accdb
- C:\ TEMP \ PB \ 29个\查询。 accdb
当前工作查询:(\〜\等)
SELECT *
FROM [;database=C:\Temp\PB\28\A.accdb].[Catalog] AS a
INNER JOIN [;database=C:\Temp\PB\28\B.accdb].[Catalog] AS b
ON a.componentid = b.externalid;
当我尝试不同的变化,除去在DB文件前面的硬编码路径,它会自动将“默认的数据库文件夹”设置在Access中。 (例如:“C:\”会改变下面的查询为“C:\ A.accdb”)
SELECT *
FROM [;database=A.accdb].[Catalog] AS a
INNER JOIN [;database=B.accdb].[Catalog] AS b
ON a.componentid = b.externalid;
我创建了一个VBA函数返回既充分“从”支架(包括数据库文件)和也只是返回路径,但我无法弄清楚在from子句中使用VBA函数的正确语法。
"[;database=" + Application.CurrentProject.Path + "\A.accdb]"
"Application.CurrentProject.Path"