根据设计,Core Data不会向其SQLite数据库发出VACUUM SQL命令,如此处所述.我正在创建一个Core Data应用程序,它将在SQLite数据库中存储并稍后删除大型二进制文件(大小为2-10MB).随着时间的推移,这将导致碎片化和大于必要的SQLite数据库.我想在我运行的清理操作期间定期发出VACUUM命令.
如何以编程方式向Core Data的SQLite存储库发出VACUUM命令?
是否可以通过Core Data执行此操作,还是必须安装SQLite数据库并直接连接到它以执行VACUUM SQL?
Jim Correia.. 12
在OS X 10.6/iOS 3.0及更高版本上,支持的方法是在将存储添加到持久性存储协调器时在选项中设置NSSQLiteManualVacuumOption.
在OS X 10.6/iOS 3.0及更高版本上,支持的方法是在将存储添加到持久性存储协调器时在选项中设置NSSQLiteManualVacuumOption.