各位朋友,如何一次将lib下所有表的数据清空,有朋友说用cl可以,如何作呀,请朋友们指教。
utirei 回复于:2005-12-07 13:39:50
clrpfm 表名
liu__jiang 回复于:2005-12-07 13:55:59
楼上说的只能一个表一个表清,不能满足楼主说的一次全部清掉,偶也不知道更好的办法,期待中……但怀疑没有楼主说的可以一次全部清掉的方法。
pro-group 回复于:2005-12-07 14:00:27
清空LIB下所有的database ,要写CL程序了。
心城 回复于:2005-12-07 14:45:25
如何写呢,请朋友们讲一个范例呀,再次感谢。
xuguopeng 回复于:2005-12-07 14:59:28
PGM
DSPFD..........将一个LIB下所有PF名输出到一个表内
RCVF ......... 读取该表
CLRPFM ..........读一个 清空一个
ENDPGM
如果你有WDS的话就比较简单了 做个OPTION就可以了
心城 回复于:2005-12-07 23:10:03
谢谢。
mamei 回复于:2005-12-08 09:28:05
CLRPFM ..........读一个 清空一个
ENDPGM
------------------------
在CLRPFM与ENDPGM加一个MONMSG,加一个RPG
如果有CLR不成功的,PRINT 一个LIST!!
这样公保险一些!
leason 回复于:2005-12-08 13:56:54
首先请问楼主清空数据的同时是否释放空间.如你的表格没有做过RGZPFM
或表格的属性中Reuse deleted records . . . . . *YES 没有选YES的话.
那么即使你删除了所有表格的数据,这些表格的空间还是占用那么多的哦.
要是楼主你要求删除的同时释放表格的空间,那么请把表格的
Reuse deleted records . . . . . *YES 选为YES (用CHGPF命令修改)
或者你删除所有表格后,对每个表格进行命令RGZPFM.
以下提供删除整个LIB下的CLP程序:.如LIBAA 里有A1,A2,A3.三个表.
[color=Red]CLP程序名为:BBB
PGM
START:
CLRPFM FILE(LIBAAA/A1)
CLRPFM FILE(LIBAAA/A2)
CLRPFM FILE(LIBAAA/A3)
DLTOVR FILE(*ALL) (这句可要可不要)
ENDPGM [/color]
编译好的BBB CLP程序后.
可直接CALL 或使用SBMJOB 命令放在BATCH里面运行,这样是在线删除,所以在程序执行前,请在LIB LIST 上面增加你要删除数据的LIB
要是LIB里面的数据很大,清除的过程中占用很多时间的,
楼主可以工作计划的安排WRKJOBSCDE 让系统社定时间自行清除数据就可以了.
单这样程序要更改一下,如下:(这样做建议使用两个CLP放到BATCH里面进行)
[color=Blue]CLP程序BBB1
PGM
START:
SBMJOB CMD(CALL PGM(LIBAAA/BBB2)) +
JOB(BBB2) JOBQ(ZZPLIB/ZBATCHL3)
/*ZZPLIB/ZBATCH1这个请查询你的系统中那些Job Queues */
/*可使用命令WRKJOBQ 查询*/
ENDPGM
CLP程序BBB2
PGM
START:
ADDLIBLE LIB(LIBAAA) POSITION(*AFTER XXXLIB)
/* XXXLIB是代表你的系统操作时最前面的一个LIB.*/
/*上面的语句就是把你LIBAAA放在最前面*/
MONMSG MSGID(CPF2103)
CLRPFM FILE(LIBAAA/A1)
CLRPFM FILE(LIBAAA/A2)
CLRPFM FILE(LIBAAA/A3)
RMVLIBLE LIB(LIBAAA)
DLTOVR FILE(*ALL)
ENDPGM[/color]
[ 本帖最后由 leason 于 2005-12-8 14:12 编辑 ]
心城 回复于:2005-12-09 17:18:19
谢谢楼上几位朋友的解答。
jolliking 回复于:2006-02-10 17:32:36
顶。。。正需要。。。谢谢
utirei 回复于:2006-02-11 12:32:18
想了一下,全部重新编译不是也可以吗?
xiaofeizhu 回复于:2006-02-11 23:16:52
shift+f4, 增加一个option,
CR clrpfm &l/&n
保存,
pdm下shift + F5, 目标类型*file, 属性pf-dta
CR OPTION
SHIFT + F1,
回车提交执行
utirei 回复于:2006-02-14 11:24:25
还是楼上的这种方法简单!
jlwrp 回复于:2006-02-14 15:49:58
是啊,还是牛人多啊!!!
qingzhou 回复于:2006-02-14 17:06:40
引用:原帖由 xiaofeizhu 于 2006-2-11 23:16 发表
shift+f4, 增加一个option,
CR clrpfm &l/&n
保存,
pdm下shift + F5, 目标类型*file, 属性pf-dta
CR OPTION
SHIFT + F1,
回车提交执行
利用PDM的 9. Work with user-defined options创建用户自定义的快捷选项,可以达到一些简便效果。
加入精华~~~
|