在讨论文件时常用的4个术语。
field(域)
基本数据单元. 一个域包含一个值, 可以通过它的长度和数据类型(ASCII字符串, 二进制数等)来描述. 长度既可以是固定的,也可以是可变的, 取决于文件的设计. 长度可变的域, 通常包含两个或三个子域:要保存的实际值、域名,某些情况下还包含域的长度。长度不可变的域,域之间的划分符号暗示了域的长度。record(记录)
是一组相关域的集合,可以看着应用程序的一个单元。记录也可以使固定或可变长度,取决于设计。如果一个记录的某些域长度可变,或记录中域的数目可变,则该记录可变。对于域数目可变的情况,每个域通常有一个域名。对于长度可变的记录通常包括一个长度域。file(文件)
是一组相似记录的集合,可以通过名字访问。文件有一个唯一的文件名,可被创建或删除。访问控制通常在文件级实施(用户或程序被允许或拒绝访问整个文件)。在一些更复制的系统,这类控制也可以在记录级或域级。有些文件系统中,文件按域而不是记录来组织,这种情况下,文件是一组域的集合。database(数据库)
是一组相关的数据的集合,本质特征是数据元素间存在明确的关系,并且可供不同应用程序使用。数据库自身是由一种或多种类型的文件组成。通常数据管理系统是独立于操作系统的。
典型的文件操作:
- Retrieve_All: 检索一个文件的全部记录。由于这个操作顺序的访问所有记录,它通常等同于术语顺序处理(sequential processing)。
Retrieve_One: 仅仅检索一个记录。交互式的,面向事务的应用程序需要这个操作。 - Retrieve_Next: 检索逻辑顺序的下一个记录。
- Retrieve_Prexious: 类似Retrieve_Next。
- Insert_One: 在文件中插入一个新记录。为保持顺序,新记录必须插入到文件适当的位置。
- Delete_One: 删除一个已存在的记录。为保持顺序,可能需要更新某些链接或别的数据结构。
- Update_One: 检索一个记录,更新该记录的一个或多个域,并把这个更改后的记录写或文件。同样需要保持文件顺序,如果记录长度的长度发生变化,更新操作通常更复杂。
- Retrieve_Few: 检索一部分记录。例如,应用程序或用户可能希望检索满足特定规则的所有记录。