- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数12-文件
* 2001 -- 12 --31 华中科技大学 计算机学院(16) 数据结构 第12章 文 件 内存不能永久性保存数据,以及容量有限,所以需要数据以文件形式存放到外部存储器中。 12.1 文件的基本概念 文件:由大量性质相同的记录组成的集合。 记录:文件中可存取的基本数据单位,它有若干个数据项组成。 数据项:最基本的不可再分的数据单位。数据项的名称称为记录的域。 关键字:能够区分文件中各记录的域。 主关键字-----可以唯一地标识一个记录的关键字; 次关键字-----不能唯一地标识一个记录的关键字。 文件分类: 按记录类型划分: (1) 流式文件:由一维的连续的字符(字节)序列组成,无结构,无解释。如C源程序。此时的记录为单个字符(字节)。 (2) 记录文件:记录是由一个或多个数据项组成的集合。如 .db .dbf文件。 按记录长度划分: (1) 定长记录文件:文件中每个记录含有的信息长度相同。 (2)不定长记录文件:文件有含有长度不等的记录组成。 记录的逻辑结构和物理结构: 逻辑结构:呈现在用户和应用程序员面前的数据组织形式,是用户对数据的表示和存取方式。着眼于用户使用方便。 物理结构:数据在物理存储器上存储的方式,是数据的物理表示和组织。应考虑提高存储空间的利用率和减少存取记录的时间。 物理记录:是计算机用一条I/O命令进行读写的基本数据单位。对固定的设备和操作系统,它的大小基本上是固定不变的。 逻辑记录和物理记录的三种关系: (1)一个物理记录存放一个逻辑记录; (2)一个物理记录存放多个逻辑记录; (3)多个物理记录存放一个逻辑记录; 用户读写记录是对逻辑记录,而操作系统对物理记录。 文件的操作: (1)检索; (2)修改。 文件的检索一般有三种: (1)顺序存取:从当前位置开始,存取下一个逻辑记录; (2)直接存取:存取第i个逻辑记录; 以上两种存取方式都是根据记录的序号(即记录存入文件时的序号)或记录的相对位置进行存取。 (3)按关键字存取:给定一个值,查询一个或一批关键字与给定值相关的记录。 对数据库文件的查询有四种: (a) 简单查询:查询关键字等于给定值的记录; (b)区域查询:查询关键字属于某个区域的记录; (c)函数查询:给定关键字的某个函数;例如查询平均分以上的记录。 (d)布尔查询:以上三种查询用布尔运算组合起来的查询。 例如查询总分600以上并且数学在100分以上,或总分在平均分以下并且外语在98分以上的所有记录。 文件的修改包括: (1) 插入一个记录;(2) 删除一个记录;(3) 更新一个记录。 文件的操作有两种方式: (1)实时:应答时间要求严格,要求在给定时间内完成。 (2)批量。 文件组织的三种基本形式: (1)顺序组织;(2)随机组织;(3)链组织。 12.2 顺序文件 顺序文件(Sequential File)是记录按其在文件中的逻辑顺序依次进入存储介质而建立的,即顺序文件中物理记录和逻辑记录的顺序是一致的。 如果次序相继的两个物理记录在存储介质上的存储位置是相邻的,则又成连续文件。 如果两个物理记录之间的次序有指针链表示,则称串联文件。 顺序文件是根据记录序号或记录的相对位置来进行存取的文件组织方式,特点: (1)存取第i个记录,必须搜索在它之前的i-1个记录; (2)插入新的记录只能在文件尾; (3)若要更新文件中的某个记录,必须将整个文件复制。 顺序文件的优点是连续存取速度快,在查找和修改都是成批处理的情况下,以顺序文件为佳。 顺序文件的分类: (1) 按关键字排列; (2) 未按关键字排列,仅按先后次序。 顺序文件的操作: (1)顺序存取:从文件的第1个记录依次顺序存取,存取效率很高。 (2)随机存取:对指定的记录进行存取,但这种要求对顺序文件来说,极不方便,存取效率很低。 (3)按关键字存取:需从文件的第1个记录开始查找,一般情况下,存取效率不高。 12.3 索引文件 除文件自身(称作数据区)之外,另建立一张指示逻辑记录和物理记录之间一一对应关系的表:索引表。这类包括文件数据区和索引表两大部分的文件称为索引文件。 索引表的每一项称为索引项。 不论主文件是否按关键字有序,索引表中的索引项总是按关键字顺序排列。若数据区中的记录也按关键字顺序排列,则称索引顺序文件,反之,称索引非顺序文件。 。 。 。 56 111 。 。 。 47 110 。 。 。 49 109 。 。 。 50 108 。 。 。 17 107 。 。 。 43 106 。 。
文档评论(0)