设计视图中未显示的字段

Fields not showing in design view

我正在处理 Access 2003 数据库,分为前端和后端。我试图压缩和修复数据库,但似乎什么也没做。

在 运行 各种导出过程之后,我注意到一些报告为已传输的列似乎与设计视图中显示的内容不符。

Public Sub Test()

    Dim db As Database
    Dim td As TableDef
    Dim f As field
    Set db = CurrentDb
    Set td = db.TableDefs("TBL tablename")

    For Each f In td.Fields
        Debug.Print f.Name
        Debug.Print f.Properties("ColumnHidden").value
    Next f

    Set f = Nothing
    Set td = Nothing
    Set db = Nothing

End Sub

进一步的测试确定 table 实际上有几个字段,其中一些是复制字段(数据库以前被复制过,但现在没有了)。更重要的是,其中一些字段是必填字段,包含项目所需的数据。

我对此有一些疑问:

更新

我通过编写一个查询来拉回数据进一步测试了这个理论,它也工作正常:

...以及 table 设计...

更新 (06/06/2016)

我已经编写了一个过程来从数据库中提取尽可能多的数据并将其放入一个新的数据库中。虽然我不认为 Microsoft Access 是这个应用程序的 suitable 平台,但目前它已经足够了。以后我会尝试把它移到SQL服务器来稳定它的运行,但同时它也得照原样使用。

我已经发布了我用来执行此操作的解决方案

我将接受此数据库已损坏的事实。沸腾的问题太多了,包括:

  • 表中缺少字段
  • 表没有复制到其他数据库
  • 无法压缩和修复数据库(C&R 会立即 return 而不做任何事情)
  • 无法删除应用于数据库的复制