0

我完全感到困惑。

一位同事遇到了数据库问题。我注意到创建有问题的本地数据库文件的(内部)软件使用对 MS JET 的编程访问,这意味着简单的第一步是查看 MS Access (2010) 是否对数据库感到满意 - 然后修复,出口/进口或维修,作为第一步。

我将独立的本地 Jet 数据文件复制到非联网虚拟机(因此没有外部数据的机会),MS Access 轻松打开了 db 文件,但我无法理解所看到的内容。

MS Access 在该系统上配置为显示所有隐藏和系统对象,确认文件中的 Access 系统表都是可见的并且可以打开。这些是我的观察:

  1. 对象浏览器列出了通常的 MS 系统表,以及一堆 SELECT (FIELD LIST) FROM (OTHERTABLENAME) WHERE (FIELDNAME=VALUE) 形式的 SELECT 查询(看起来正确),仅此而已。
  2. 选择查询在打开时显示具有有效数据记录的常用网格,并且数据看起来也正确。
  3. 对象浏览器界面中没有显示具有给定名称的数据表。
  4. 给定的名称在系统表 MSysObjects列为数据库的对象。

所以.....基础数据表在 MSysObjects 中命名,并且似乎是真正的数据表......但它们没有在对象浏览器中列出,我不知道如何打开它们的数据表(尽管 MS Access ' 系统表是,并且“显示隐藏/系统”都已启用)......并且这些表肯定存在于文件中,因为明显的 SELECT 查询正在从中提取它们的数据,并且文件位于干净的非网络上没有其他来源的机器。

有任何想法吗?我想检查基础数据,但是……这是怎么回事?

4

1 回答 1

0

当我检查您的数据库时,我发现您无法正常访问表的原因是因为创建 db 文件的内部应用程序的作者实施了防止正常访问的措施。

我建议您联系他们和您的经理,以获得查看数据的授权和帮助。

另外,请谨慎对待这个问题。一个可疑的人可能会无情地将您的问题解释为对黑客帮助的变相请求。请注意,我并没有指责您有任何卑鄙的行为……只是要求您注意您的问题可能会被如何看待。而且,如果发生这种情况,我不知道 Stack Overflow 会产生什么后果,但我无法想象这会是好事。所以请小心。

于 2013-08-18T17:19:10.277 回答