如何在访问中转换为图像文件的相对路径(从闪存驱动器使用数据库)?

问题描述 投票:1回答:1

我想将我的数据库移动到闪存驱动器(化石集合的目录)。我想将它发送给可能在不同计算机上使用它的一些同事。相关的图像变得非常大,22 GB,所以考虑到重复复制的麻烦而不知道它们有多少空间,我认为直接从闪存驱动器运行它会更方便。

我已将图像移动到与数据库相同的文件夹中。它们存储在文件夹“Collection images”中的子文件夹中。

我可以通过放置(例如)来显示图像

=[CurrentProject].[Path] & "\Collection images\Cabinet
19\0001-19-1-22390a-1.tif"

在图像控制源中,但我已经有一个字段中的文件路径(超过一千),并想知道是否有一个较少耗时的方法来做到这一点。我还创建了一个搜索表单,我不确定这个方法将如何影响它的行为。

这是我的第一个数据库,我的编码经验几乎不存在。 “按数字”解释会非常有用,但任何指针都会非常感激 - 谢谢!

ms-access ms-access-2016
1个回答
2
投票

我个人的做法通常是:使用占位符来指示文件夹的路径:

首先,更新表:

UPDATE MyTable
SET ImagePath = Replace(ImagePath, "C:\My\Absolute\Path", "%Placeholder%")

然后,在显示时将占位符替换为当前路径。

作为图像属性:

=Replace(ImagePath, "%Placeholder%", CurrentProject.Path)

您还可以决定只存储没有占位符的相对路径:

UPDATE MyTable
SET ImagePath = Replace(ImagePath, "C:\My\Absolute\Path", "")

然后在开始时附加当前路径:

=CurrentProject.Path & ImagePath

占位符方法的主要优点是可以混合绝对路径和相对路径,并在单个表中使用多个不同的相对路径。

© www.soinside.com 2019 - 2024. All rights reserved.