点击或拖拽改变大小

Functions.DbPack 方法

X#
从数据库文件中删除所有标记为删除的记录,重建所有活动顺序,并恢复被删除记录占用的所有物理空间。

命名空间:  XSharp.RT
程序集:  XSharp.RT (在 XSharp.RT.dll 中) 版本:2.22 GA
语法
 FUNCTION DbPack() AS LOGIC
查看代码

返回值

类型:Boolean
如果成功则返回TRUE;否则返回FALSE。
备注

默认情况下,此函数在当前选定的工作区上操作。
可以通过在别名表达式中指定或调用接受工作区参数(工作区编号或别名)的重载来使其在未选定的工作区上操作。
此函数要求当前数据库以独占模式打开(参见SetExclusive())。
如果在调用函数时不满足此条件,将引发运行时错误。
否则,操作将继续进行,并在终止时将记录指针重置为当前工作区中的第一个逻辑记录。 警告!DBPack()不会创建备份文件。您可能想在发出此函数调用之前对文件进行备份;否则,您将无法恢复已删除的记录。 提示:压缩大型数据库文件可能是一个耗时的过程,因此不建议在高容量事务应用程序中使用。通过修改应用程序设计,您可以消除从数据库文件中物理删除记录的必要性。只需使用SetDeleted(TRUE)或DBSetFilter(!Deleted())过滤已删除的记录,并重用已删除的记录而不是添加新记录。
示例
以下示例使用DBPack()和别名表达式从文件中删除所有标记为删除的记录:
X#
1Address->DBPack()
2// 对Address别名进行操作
参见