Sql server SQL Server CE中的收缩和压缩有什么区别?
我有一个定期运行的方法来优化我的应用程序的SQL Server Compact Edition(3.5)数据库。现有代码使用Shrink()方法: 今天我注意到还有一个Compact()方法。对于定期维护,哪一种更可取?来自: 这两者的区别是 非常类似于内部和外部 内存碎片Sql server SQL Server CE中的收缩和压缩有什么区别?,sql-server,sql-server-ce,Sql Server,Sql Server Ce,我有一个定期运行的方法来优化我的应用程序的SQL Server Compact Edition(3.5)数据库。现有代码使用Shrink()方法: 今天我注意到还有一个Compact()方法。对于定期维护,哪一种更可取?来自: 这两者的区别是 非常类似于内部和外部 内存碎片 根据文件 回收数据库中浪费的空间 通过移动空的和未分配的页面 到文件的结尾,然后 截断文件。你可以 将数据库配置为自动 通过设置自动收缩来收缩 连接字符串中的阈值选项。 Shrink不会创建临时文件 数据库文件 根据文件
根据文件 回收数据库中浪费的空间 通过移动空的和未分配的页面 到文件的结尾,然后 截断文件。你可以 将数据库配置为自动 通过设置自动收缩来收缩 连接字符串中的阈值选项。 Shrink不会创建临时文件 数据库文件 根据文件 回收数据库中浪费的空间 通过从创建新的数据库文件 现有文件。通过创建新的 数据库意味着,它回收免费的 行与行之间的间距
更清楚地说,收缩声称 完全免费或免费的页面 未分配的;其中,合同索赔 页面中浪费的空间也是如此。 因此,Compact需要创建一个新的 数据库文件
SqlCeEngine engine = new SqlCeEngine(dbConnectionString);
engine.Shrink();