关系型数据库中的数据存储与检索
Data Storage and Retrieval in Relational Database
我正在启动一个项目-迷你数据库系统,基本上是一个像MySQL这样的小数据库。我计划使用c++,我读了几篇文章,了解到表将使用文件进行存储和检索。此外,我需要使用B+树来访问和更新数据。
有人可以用例子解释一下数据如何实际存储在文件中,例如,我有一个数据库"test",其中包含表"student"。
student(id,name,grade,class)和一些学生条目。那么该表的表项将如何存储在文件中,是将其存储在单个文件中,还是将其划分为多个文件,如果以后再存储,那么将如何存储呢?
磁盘上的B+Tree是一堆固定长度的块。你的程序将读取/写入整个块。
在一个块中,记录的数量是可变的。它们是由你选择的某种机制安排的,需要以某种方式排序。
"叶节点"包含实际数据。在"非叶节点"中,"记录"包含指向子节点的指针;这是b树的工作方式。
B+树具有相同级别的链接块的额外链接(和维护麻烦)。
维基百科有一些很好的讨论
相关文章:
- 使用 pqxx 将 std::vector 存储在 postgresql 中,并从数据库中检索它
- C++-需要读取存储在文件(.txt)中的时间戳并正确检索
- 我正在编写一个代码来将 int 数组存储在文件中,然后用 c++ 检索它,但是检索第一项是假值,我该如何解决这个问题?
- SQLite3 C++检索 ID 并存储到另一个表
- 如何在文件中节省空间地存储和检索 std::vector<int> 值
- 如何从 linux 二进制文件中存储和检索数据
- 如何将浮子值的字节存储在字符串中并以后检索值
- 如何在三维数组中使用std::map来存储/检索具有特定值的键
- 存储和检索位字段中的有符号值
- 如何通过先前存储的ID从结构对象中检索值?C
- 手动检索和存储指向 OpenGL 函数的指针时遇到问题
- c++使用字符串句柄对对象进行通用存储和检索
- 使用 XPTR 在内存中存储和检索矩阵
- 以数组的形式存储组合框项,并在 WPF 中检索 SelectedId
- 使用 QSqlQuery 检索 MySQL 存储过程的输出
- 使用c++通过文件存储和检索链表
- 从数据库中以 blob 数据类型形式存储的原始图像数据中检索 CImage 对象
- 对象未在矢量 (C++) 中正确存储/检索
- 如何存储/检索用作模板参数的成员函数指针
- 无法从安全数组中存储/检索值