第十二章文件.ppt

想预览更多内容,点击预览全文

申明敬告:

本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己完全接受本站规则且自行承担所有风险,本站不退款、不进行额外附加服务;如果您已付费下载过本站文档,您可以点击这里二次下载

文档介绍

第十二章 文件;第十二章 文件;按记录含有信息的长度不同可分成:;③按关键字存取:给定一个值,查询一个或一批关键字与给定值

相关的记录。对数据库文件可以有如下4种查询方式: 1.简单询问:查询关键字等于给定值的记录。 2.区域询问:查询关键字属某个区域内的记录。 3.函数询问:给定关键字的某个函数。 4.布尔询问:以上3种询问用布尔运算组合起来的询问。;£12.2 顺序文件;磁带文件的批处理过程:; 在归并的过程中,顺序读出主文件与事务文件中的记录,比

较它们的关键字并分别进行处理。对于关键字不匹配的主文件中

的记录,则直接将其写入新主文件中。“更改”和“删除”记录时,

要求其关键字相匹配。“删去”不用写入,而“更改”则要将更改后

的新记录写入新主文件。“插入”时不要求关键字相匹配,可直接

将事务文件上要插入的记录写到新主文件的适当位置。 ;while (!feof (f) | | !feof (g)) { switch { case fr.key < gr.key: //复制“旧”主文件中记录 fwrite (*fr, sizeof(RcdType), 1, h); if (!feof (f)) fread (*fr, sizeof(RcdType), 1, f); break; case gr.code = = ‘D’ && fr.key = = gr.key: //删除”旧”主文件中记录,不复制 if (!feof (f)) fread (*fr, sizeof(RcdType), 1, f); if (!feof (g)) fread (*gr, sizeof(RcdType), 1, g); break; case gr.code = = ‘I’ && fr.key > gr.key: //插入,函数P把gr加工为h的结

最近下载