我使用MS Access访问桌面应用程序。用户可能没有安装访问权限或办公室。是否可以使用SQL查询压缩MS访问?
插入和删除后如果没有压缩数据库,大小会不断增加? 如果是,当它超过其允许的最大大小时,即使它没有很多记录,也会拒绝任何进一步的插入?
答案 0 :(得分:1)
在添加/删除/更新其记录时,MSAccess数据库(与大多数数据库一样)的大小会增加,这是正确的。
定期压缩您的Access数据库是一项强烈推荐的维护活动,因为它会优化和修复任何最近的损失,而不会让他们有机会复合并使事情变得更糟。
理想情况下,您希望按计划执行此操作,例如,作为数据库备份策略的一部分(每晚都是个好主意)。
至于你的另一个问题:你不能只发出一个SQL命令来压缩Access数据库。
但是,您可以使用每台Windows计算机上已安装的DAO
库从代码压缩数据库。
查看问题Access “Compact and Repair” programatically
中提出的解决方案 但有一条建议:不要尝试压缩网络上的共享数据库,除非您绝对确定您是唯一访问它的人。你可能会破坏数据库。
无论如何,我强烈建议您在对数据库执行任何压缩/修复操作之前先复制数据库。