0

我正在 Microsoft Access 中创建一个应用程序。这是针对客户将在桌面上运行的小型数据库。不会涉及任何类型的网络。使用数据库所需的所有文件都必须位于一台台式计算机上。

我想分阶段将应用程序交付给我的客户。我很可能会将 .accdb 文件通过电子邮件发送给客户。我如何提供更新并维护客户已经输入的任何数据?更新可能包括对表格结构和表格的更改。

对我最初的问题给出的答案解决了更改表单和其他 UI 元素的问题。但是,如果我想在现有的表中添加表或添加列怎么办?如何无缝交付此类更改,同时在用户端保留尽可能多的数据?

4

2 回答 2

3

将数据库和接口拆分为单独的文件。谷歌应该有大量的信息,因为这是典型的 MS Access 应用程序。

以下是一些帮助您入门的资源:

如何在 Microsoft Access 中手动拆分 Access 数据库

分步拆分 Access 数据库

于 2012-07-07T18:08:13.670 回答
2

您绝对必须(!)将您的数据库分成两部分。存储表的后端部分(“数据库”)和包含表单、报告、查询和应用程序逻辑的前端(“应用程序”)。将表格从后端链接到前端。

前端可能还包含带有控制参数、报告字典等的表格,但没有您的客户输入的数据!

较新版本的 Access 具有数据库拆分向导。

您可能需要一个自动将后端链接到客户站点上的字体端的代码。


更新

您有两种方法可以更改客户 PC 上的数据库架构。

1)通过DAO(或ADOX)对象模型进行更新。例如

    Set tdf = db.CreateTableDef("tblNew")
    tdf.Fields.Append tdf.CreateField("fieldname", dbText)
    ...
    db.TableDefs.Append tdf

2) 使用 DDL 查询

    CREATE TABLE MyNewTable (
      ID AUTOINCREMENT,
      Textfield    TEXT(50),
      LongField    LONG,
      ...,
      CONSTRAINT PK_MyNewTable PRIMARY KEY (ID)
    )

或者

    ALTER TABLE SomeExistingTable ADD COLUMN Newcolumn Text(50)
于 2012-07-07T18:14:47.947 回答