问题
单项选择题
以下关于堆文件的删除操作叙述错误的是______。
A.堆文件的删除操作比较简单,在堆文件头存储它的最后一个磁盘块的地址
B.先找到被删除记录所在的磁盘块,然后将该磁盘块读到内存缓冲区
C.在缓冲区中删除记录,将缓冲区中修改后的磁盘块内容写回磁盘文件
D.如果文件是定长记录文件,当删除一个记录时,将文件末尾记录移动到被删除记录的位置,从而避免重新整理存储空间
答案
参考答案:A
解析: 堆文件的删除操作比较复杂,可以首先找到被删除记录所在的磁盘块,然后将该磁盘块读到内存缓冲区。在缓冲区中删除记录,将缓冲区中修改后的磁盘块内容写回磁盘文件;也可以在每个记录的存储空间增加一个删除标志位,当删除一个记录时将删除标志位置1;查找记录时跳过删除位置l的记录。此外,如果文件是定长记录文件,当删除一个记录时,将文件末尾记录移动到被删除记录的位置,从而避免重新整理存储空间。所以本题的答案为A。