【发布时间】:2014-07-16 23:28:44
【问题描述】:
我正在使用 Matlab 使用 ODBC 操作 Microsoft Access 数据库。我使用 SQL 命令“DROP TABLE table_name”并将其传递给 Matlab 中的 exec(...) 语句。它在相应的 MS Access 文件中删除了表,但是当我查看文件的总大小时,它并没有减少。因此,删除的表仍然在文件中的某个地方。我想完全删除删除的表,以便释放空间。我该怎么做呢?
【问题讨论】:
我正在使用 Matlab 使用 ODBC 操作 Microsoft Access 数据库。我使用 SQL 命令“DROP TABLE table_name”并将其传递给 Matlab 中的 exec(...) 语句。它在相应的 MS Access 文件中删除了表,但是当我查看文件的总大小时,它并没有减少。因此,删除的表仍然在文件中的某个地方。我想完全删除删除的表,以便释放空间。我该怎么做呢?
【问题讨论】:
MS Access 不会自动为已删除的记录和表释放空间。要回收 MS Access 数据库文件中的空间,您基本上有两个简单的选择:
msaccess.exe /compact database_file.mdb
我假设您应该能够从 MatLab 中调用命令行变体。
除了这些选项之外,您还可以编写相同的行为脚本。更多信息here。
【讨论】: