在Access中使用系统表保存应用程序变量


  在开发Access 利用程序时,普通需求在窗体和模块中 引用许多变量 。为治理这些变量,固然 可以在启动窗体中 使用Microsoft Visual Basic for Application(VBA)来设置它们的值, 而后再调用某个模块,由该模块初始化这些值 。

  但是,在 实现 利用程序开发之后, 使用这个 步骤的问题浮现了: 其余人可能需求在 将来某个时候转变那些值,却不晓得从何处开始 。我 提议在数据库中 构建一个名为SystemTbl的表, 而后消费者 可以 拜访这个表,并在 适当的时候 批改数据 。

   构建表和窗体

  将表 缔造好并将变量增加到表中的新记录之后, 可 认为消费者 缔造一个只同意 批改而不能增加或删除记录的窗体,表中应该只包括一条记录 保留有关 使用 步骤的信息 。一旦 保留 彻底部变量, 可以在 利用程序需求的时候 使用VBA来检索那些变量值 。

  例如, 假如 利用程序需求 保留 利用程序治理员的姓名和电话号码,正如你 方才所了解到的,这条信息要求方便 批改,假如把它编写到窗体或模块的代码中没有什么 意思 。

  该表 预约义了一条记录和两个字段(到当前为止):

  表:SystemTbl

  字段1:AdminName

  字段2:AdminPhone

  当需求在窗体上向消费者显示 适当的姓名和电话号码时, 可以 使用OnOpen或OnLoad事件填充窗体上的相应标签,在本例中,我们把标签命名为“PhoneLabel”和“NameLabel” 。清单1.10 .A显示了这个示例函数的代码 。

  在该示例函数中,我们以SnapShot-ForwardOnly 模式 打开记录集,以削减 拜访记录集时占用的资源; 而后,我们将表中字段的值 利用到Name和Phone标签的 题目上 。

  最终,关闭记录集 。永远记住要关闭记录集,它会累积为不需求的资源,招致性能减低甚至更 蹩脚的问题 。因为系统表中惟独一条记录,检索过程极快 。现在,你已经给一个有效的数据库 利用程序增加了可 扩大的解决 步骤 。