一直很想开发个属于自己的小型数据库,并经历了一段时间的准备和学习,大致开发出了一个小型的数据库,这里主要介绍下核心代码的实现。
数据库的核心就是指针链表的使用和其算法的实现,关键就是对链表的灵活运用,下面首先对我们要开发的数据库的功能和使用进行一个高级设计,当然我们不可能在这么短的时间内开发出一个类似或者近似于SQL SERVER或者POSTGRESQL,甚至与ORACLE的数据库,可能更多的只能做到熟悉或者学习的目的,所以我们在这里不涉及到巨型数据的存放使用,并且没有研究过大型数据对操作系统的负载和使用,所以只存在一般性的运用,那么,好吧,我们首先定义我们数据库所用到的表,当然,所为一个基本的数据库,是具有动态建立所需表的功能的,在这里,由于我急于探讨内部的机制,对于这些扩展的功能并没有投入过多精力,所以就指定了我们使用的表的健的数量,这里完全有我定义,我将表的健定为六个,依次为num,name,birth_yy,birth_mm,birth_dd,strength,当然主键就是第一个num了,至于每个健的意思,完全是个人随机构思的,那么指定了表,然后在定义我们数据库需要实现的基本操作,在这里,我主要定义和实现了以下几个操作模块:
1.SELECT,2.DELETE,3.INSERT,4.SHOW,5.LOAD,6.SAVE,7.CLOSE,8.MODIFY。
那么开始数据库的开发,首先,定义需要用到的结构体:
struct Date_struct
{
int num;
char name[10];
struct Date_birth birthday;