如何从访问 SQL 插入语句中引用用户配置文件路径Microsoft?



我正在使用云存储驱动器与同事共享一些复杂的 Access 数据库。 我希望数据库直接从本地云存储路径执行。

C:Usersexample.dudeCloudDriveOther FoldersMain Database.accdb
C:Usersexample.dudeCloudDriveOther FoldersArchive Database.accdb

我已经能够让大部分工作。 但是,我在主数据库中有一些附加查询,将数据添加到存档数据库。 不是下面的完整SQL语句,只是一个示例。

::: Query in Main Database :::
INSERT INTO [Some Table] ( ID, [Other Fields] ) IN 'C:Usersexample.dudeCloudDriveOther FoldersArchive Database.accdbArchive Database.accdb'
SELECT [Some Table].ID, [Some Table].[Other Fields] AS etc etc etc

问题是"example.dude"只是一个用户的用户配置文件路径。 如何访问 SQL 语句中的操作系统 %USERPROFILE%?

我反对某种动态重新创建 SQL 的 VBA 解决方案;我至少有十几个这样的SQL语句,其中一些非常冗长。

使用Environ

INSERT INTO [Some Table] ( ID, [Other Fields] ) IN 'C:Users" & Environ("username") & "CloudDriveOther FoldersArchive Database.accdbArchive Database.accdb'

不是这个确切问题的答案,但我确实找到了解决方法。

我在 Windows 命令行中使用了"subst"命令将驱动器号映射到 %userprofile%\CloudDrive\etc

此命令不是持久性的,因此我在任务计划程序中创建了一个任务,以便在用户登录时运行并运行 subst。

然后我所要做的就是更改 SQL 以指向新的驱动器号和路径。

相关内容

  • 没有找到相关文章

最新更新