ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 关于内表释放的相关语法对比[1]

关于内表释放的相关语法对比[1]

原创 Linux操作系统 作者:leniz 时间:2009-06-26 14:34:50 0 删除 编辑

关于内表释放的相关语法对比[1]

在使用内表时,如果不会再使用这个内表了,一个好的编码习惯是:清理内表,释放内表空间。我们不迷惑这个习惯,但是常常被清理内表、释放内表的语法所迷惑,因为有:clear、free、refresh。

    首先我们来看看各个命令的语法。

     CLEAR

        Syntax

         CLEAR dobj.

    执行后,所有内表中的行将会被删除,内表消耗的空间将被收回,仅保留内表初始内表空间的大小(在定义内表时可以通过“INITIAL SIZE”来显式声明初始行数)。上述说法成立有一个非常重要的前提,那就是“dobj”是一个没有工作区(header)的内表,否则执行结果将只是清空工作区,这一点也是我们最容易搞错的。所以如果内表有工作区又的却需要清空内表请使用“CLEAR dobj[]”,如果需要顺带清空工作区,可以使用“CLEAR: dobj,dobj[]”。 

REFRESH

Syntax

REFRESH itab.

    执行后,内表中的所有行将会被删除清空并释放空间,内表恢复到初始值预留行的空间大小,所以执行效果和“CLEAR itab[]”是一样的。如果此内表带工作区,工作区不会被清除。

FREE

Syntax

FREE itab.

    执行后,内表中的所有行将会被删除清空并释放所有的空间,即使内表声明时预留了空间,但和“REFRESH”一样,不会去清空工作区。

 

[有下段]

 

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/554557/viewspace-607650/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-05-31

  • 博文量
    448
  • 访问量
    1193722