DISP=MOD
这将追加到现有顺序数据集的末尾。如果指定的数据集尚不存在,则将创建该数据集(在这种情况下,DISP = MOD和DISP = NEW是等效的)
注意以下几点:
多卷数据集
行为DISP=MOD
取决于是否指定特定的卷。您应该查看此参考资料
中的规则
分区数据集
如果在DSNAME参数中指定了成员名称,则该成员名称必须不存在。系统将读/写机制放置在数据集的末尾。如果成员名称已经存在,则系统终止作业。
如果未指定成员名称,则系统会将读/写机制置于数据集的末尾。系统不会自动进入目录。
将数据添加到PDS / PDSE成员的末尾有些技巧。通常,您必须删除并重写带有新记录的整个成员。
顺序数据集和COBOL OPEN动词
DISP
JCL中的给定和COBOL OPEN
动词之间存在一些“相互作用” 。
如果您指定DISP=MOD
在JCL,COBOL程序会记录添加到两个连续的数据集的结尾OPEN OUTPUT
和OPEN EXTEND
。
如果DISP=OLD
在JCL中指定,则COBOL程序会将记录添加到的顺序数据集的末尾OPEN EXTEND
。如果您以形式打开顺序数据集OPEN OUTPUT
,则该数据集的原始内容将被删除,并且您实际上将再次从一个空的数据集开始(就像您已删除并重新分配它一样)。
VSAM数据集
虚拟存储访问方法(VSAM)文件完全不同。VSAM数据集来自多种组织:
每个组织都有自己的特征和用法。
必须先预定义VSAM数据集,然后COBOL程序才能引用它们。通常,这是作为单独的
IDCAMS作业完成的。一旦定义了VSAM数据集,就可以通过COBOL(或其他)程序对其进行访问。该
参考为在COBOL下操作VSAM数据集提供了很好的概述。“ 将记录添加到VSAM数据集 ”一节
涵盖了从COBOL程序向VSAM数据集添加记录的细节。使用OPEN EXTEND
COBOL open语句的版本将记录添加到现有ESDS或KSDS VSAM数据集的末尾。请注意,对于KSDS数据集,必须相对于键以递增顺序添加记录。
实际上,用于将VSAM数据集连接到程序的JCL非常简单,在此进行了介绍。使用DISP=MOD
与DISP=OLD
现有VSAM数据集相同(使用其中一个-没什么区别)。使用DISP=SHR
如果你没有更新的数据集,并且不希望阻止并发访问其他程序。
归档时间: |
|
查看次数: |
11930 次 |
最近记录: |