【问题标题】:Access MDB: do access MDB files have an upper size limit?访问 MDB:访问 MDB 文件是否有大小上限?
【发布时间】:2010-05-07 02:41:56
【问题描述】:

访问 .MDB 文件是否有大小上限?例如,连接到超过 1GB 的 .MDB 文件的应用程序会出现问题吗?

超过 1GB 的 MDB 文件存在哪些问题/风险,可以采取哪些措施?

【问题讨论】:

    标签: ms-access


    【解决方案1】:

    是的。 MDB 文件的最大大小为 2 GB,是的,任何超过 1 GB 的文件都会真正推动 Access。

    原始(现已损坏)链接Access Database Specifications

    请参阅Access Database Specifications 了解更多信息。 (回程机)

    【讨论】:

    • @Martin - 不幸的是,微软似乎已经破坏了所有指向 MDB 文件规范的链接。网上有很多非权威链接,但我无法从 MS 中找到他们以前提供的文档。
    • @Martin - 添加了 Wayback 版本的链接。
    【解决方案2】:

    对于大型 Access 数据库,您可能会发现数据检索非常缓慢。索引可以大大减轻痛苦。例如,如果您有一个包含“WHERE somefield = 27”的查询,如果您在某个字段上创建索引,则数据检索会快得多。如果您对索引没有多少经验,请尝试使用性能分析器工具来帮助您入门。在 Access 2003 中,性能分析器可从工具 -> 分析 -> 性能中获得。我不确定其他 Access 版本。

    关于索引的一个警告是它们增加了插入、更新和删除操作的开销,因为除了发生更改的表之外,数据库引擎还必须修改索引。因此,如果您要对所有内容进行索引,则可能会使性能变得更糟。

    尝试限制您的客户端应用程序从大型数据库中检索的数据量。例如,对于表单,不要使用表格作为表单的数据源。而是创建一个只返回一行或几行的查询,并将该查询用作表单的数据源。为用户提供一种方法来选择她想要处理的记录并仅检索该记录。

    您没有提到您是否执行了压缩和修复。如果没有,请尝试;它可以大大缩小数据库的大小。除了回收未使用的空间之外,compact 还会更新索引统计信息,这有助于数据库引擎确定如何更有效地访问数据。

    Tony Toews 提供了有关 Access 性能的更多信息,您可能会发现它很有用,但它并不特定于大型数据库。见Microsoft Access Performance FAQ

    如果您预计会遇到 MDB 文件的 2 GB 限制,请考虑将数据移至 SQL Server。免费的 Express 版本也限制了您可以存储的数据量,但比 Access 更慷慨。 SQL Server Express R2 将允许您存储 10 GB。实际上,我可能会在 Access 的 2 GB 限制之前迁移到 SQL Server。

    【讨论】:

      【解决方案3】:

      数据库中所有对象的总计 2 GB

      数据库中的对象总数 32,768

      【讨论】:

      • 引用该信息的来源网站会很好。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-10
      • 1970-01-01
      • 2011-03-20
      相关资源
      最近更新 更多