项目起源 在学习数据库原理的过程中发现一个用C实现简单数据库的项目,它同boltdb的实现有相似之处。 开发步骤 实现交互式编程环境; 实现简单sql编译器和虚拟机; 在内存实现仅支持添加、单表的数据库; 测试方案; 持久化到硬盘; 抽象出游标; B树叶子节点的格式; 实现二分查找; 分裂叶子节点; 实现递归查找; 扫描一棵多层的B树; 分裂节点后更新父节点。 Tips 序列化(serializeRow)、反序列化(deSerializeRow)函数以及移动节点cell的函数(moveTo)借鉴自boltdb项目。