访问 MDB:访问 MDB 文件是不是有大小上限?
Posted
技术标签:
【中文标题】访问 MDB:访问 MDB 文件是不是有大小上限?【英文标题】:Access MDB: do access MDB files have an upper size limit?访问 MDB:访问 MDB 文件是否有大小上限? 【发布时间】:2010-05-07 02:41:56 【问题描述】:访问 .MDB 文件是否有大小上限?例如,连接到超过 1GB 的 .MDB 文件的应用程序会出现问题吗?
超过 1GB 的 MDB 文件存在哪些问题/风险,可以采取哪些措施?
【问题讨论】:
【参考方案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
【讨论】:
引用该信息的来源网站会很好。以上是关于访问 MDB:访问 MDB 文件是不是有大小上限?的主要内容,如果未能解决你的问题,请参考以下文章
应用程序访问共享文件夹上的 mdb 文件,而客户端上没有 ms 访问权限
访问错误 3443:无法识别的数据库格式“databasename.mdb”