【问题标题】:Create Directory for records in MS Access 2007在 MS Access 2007 中为记录创建目录
【发布时间】:2010-04-06 16:19:59
【问题描述】:

是否可以在 Access 2007 中为单个记录创建目录文件夹。例如

tblUser
ID
firstName
surName

添加记录时,会创建一个文件夹 C:\userdatabase\Surname,firstName,ID

可以看到这在需要将大量图像/文件与记录关联的情况下很有用。 Access 将为每条记录创建并链接到一个目录。

提前感谢您的任何建议

诺埃尔

【问题讨论】:

    标签: ms-access ms-access-2007


    【解决方案1】:

    您可以使用 VBA MkDir 语句来创建目录。

    例如,如果您想创建一个名称与您的 ID 值之一匹配的文件夹,作为存储数据库的目录下的子文件夹,您可以使用以下代码:

    MkDir CurrentProject.Path & "\" & ID
    

    【讨论】:

      【解决方案2】:

      用一个命令创建整个目录结构:

      link text

      【讨论】:

        【解决方案3】:

        虽然这些都是对所提问题的有趣答案,但我不得不想知道为什么原始发布者认为这是必要的。如果您使用数据库来跟踪信息,那么文件的存储位置并不重要。

        当然,如果您需要从文件系统访问文件,这可能是一种方法,但根据我的经验,通常不是最有用的方法(它将数据隔离得太高)。

        所以,我基本上是说要回过头来质疑设计是否正确。很可能是这样,但在做出这样的事情之前你应该确定一下,我认为这是不必要的复杂。

        【讨论】:

        • 嗨,大卫。这将是我需要访问文件系统。本质上,我打算创建的数据库存储客户有关其房屋的详细信息。这将包括最多 30 张照片。显然我不想将这些存储在数据库中,因为它们会占用大量数据。如果一个目录系统是自动创建的,所以我们有 db/user,id/photos。如果目录是自动生成的,我觉得对于 db 用户来说,为相关记录添加和维护相关文件会更容易。
        • 我需要进行研究,但希望可以在访问权限内读取目录的内容并将其显示在记录中。因此,如果我查看用户/ID 的记录,则 db/user,id/photos 目录中的图像列表(或预览)将可用。
        • 听起来相当合理,可以作为您正在做的事情的理由——如果每个客户只有一个文件,那么就不是那么多了。
        • 在 Access 中显示图片的处理方法是,我认为使用未绑定的图像控件和列表框。在 OnCurrent 事件中,您将对文件夹执行 Dir() 以获取图片列表,然后使用它来填充列表框的行源。然后列表框的 AfterUpdate 事件将在未绑定的图像控件中加载图像。也可以将图像控件绑定到列表框,但我没有使用新的 A2007 图像控件,所以不能肯定。我建议您就此发布一个新问题,以免它被埋没在 cmets 中。
        猜你喜欢
        • 2012-03-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-05-18
        • 1970-01-01
        • 2023-03-10
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多