您的位置:首页 > 其它

fastdb中记录的插入,更新,和删除,查询

2010-01-12 10:46 260 查看
记录的插入

记录的插入首先从内存中的dbTableDescriptor链表中找到对应的表oid,从硬盘上读取dbTable,之后分配记录空间,把记录存入硬盘,分配记录的oid,根据dbTable中的lastRow,把新的记录链入双向链表中,如果有索引的话,找出对应的字段更新索引,dbTableDescriptor链表相录于数据字典的作用,



更新和删除,也是这个过程,

查询的过程,大致也是如此,

从dbTableDescriptor链表-->硬盘上的dbTable-->根据dbTable中的firstRow找到第一个记录的oid--->之后就是按照链表,依次遍历的过程,当有索引时,就是不遍历,直接根据索引找到记录的oid,

查询用到了cursor,这里面有个列表用于保存满足查询条件的oid,里面并没有保存对录,只保留了oid

上面全部都用到了oid,因为知道oid之后,就知道了对象在文件中的偏移位置,而且对象本身是保存了记录大小的,根据这两项就能把记录读出来,
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐