COBOL 文件处理
COBOL中的文件概念与C/C++的不同。在学习COBOL中文件的基础知识时,不应该将这两种语言的概念关联起来。简单的文本文件不能在COBOL中使用,而是使用PS(物理顺序)和VSAM文件。PS文件将在本章中进行讨论。
要了解COBOL中的文件处理,必须知道基本术语。这些术语仅用于帮助理解文件处理的基本原则。进一步深入的术语将在下一章“COBOL-文件组织”中进行讨论。以下是基本术语:
- Field(字段)
- Record(记录)
- Physical Record(物理记录)
- Logical Record(逻辑记录)
- File(文件)
下面的例子可以帮助理解这些术语:
Field(字段)
字段用于指示所存储的关于一个元素的数据。它代表上述示例中所述的单个元素,例如student id,name,marks,total marks和percentage。任何字段中的字符数称为字段大小,例如学生姓名可以有10个字符。字段可以有以下属性:
Primary keys(主键):是每个记录唯一的字段,用于识别特定的记录。例如,在学生成绩文件中,每个学生将具有唯一的student id作为主键。
Secondary keys(辅键):是用于搜索相关数据的唯一或非唯一字段。例如,在学生成绩档案中,当student id未知时,学生的name可以作为辅键。
Descriptors(描述符):描述符字段是用来描述实体。例如,在学生成绩档案中,给记录添加意义的marks和percentage就是描述符。
Record(记录)
Record是用于描述实体的字段的集合。一个或多个字段一起形成记录。例如,在学生成绩档案中,学号,姓名,成绩,总分和百分比形式的一个记录。在记录的所有字段的累积大小是已知的,作为记录大小。存在于一个文件中的记录可以是固定长度或可变长度的。
Physical Record(物理记录)
物理记录是在外部设备上存在的信息。它也被称为block(块)。
Logical Record(逻辑记录)
逻辑记录是由程序使用的信息。在COBOL程序中,只有一个记录可在任何时间点进行处理,它就是逻辑记录。
File(文件)
文件是相关记录的集合。例如,学生成绩文件由所有学生的记录组成。