c简易实现本地数据库

本文介绍了使用C语言实现本地数据库的方法,通过dbtype.h提供的PList双向链表进行精细操作,以及XperditDB.h中table数据库容器的增删改查功能。详细源码见dbtype.h。
摘要由CSDN通过智能技术生成

这个数据库一共用到两个头文件
#include"dbtype.h"
#include"XperditDB.h"

dbtype.h提供了一个PList双向链表可以对数据库进行精确的操作

XperditDB.h提供了table一个数据库容器来对数据库进行增删改查

下面是方法介绍:

initTable(table t)
对table变量进行初始化

createTable(PList typeName,char *TabName,table &t)
创建一个新的table,其中typeName为一个Plist,它存放了储存的数据名称,TabName为数据库在本地的名称

getTable(char *tableName,table &t)
获取一个已经存在的table,tableName为已经存在的本地数据库名称

clearTable(table &t)
释放table,但不破坏本地数据库

insert2Table(table &t,PList item)
像table中插入数据,item为插入的数据

delTableElem(table &t,int id)
删除ID=id的那一列数据

getElemInTableFromID(table t,int id)
通过id获取那一列数据

getElemIDInTableFromChar(table t,char *type,char *item)
通过类型名和内容返回该列的id 通常搭配getElemInTableFromID使用

updateDB(table t)
将t同步到本地的数据库

readTable(table t)
在命令行中显示t的所有内容

initList(PList &p)
初始化Plist

PList的基本函数就不写了 详见dbtype.h

下面附上源码:

dbtype.h

#ifndef DBTYPE_H
#define DBTYPE_H
#include<stdio.h>
#include<malloc.h>
#include<string.h>
#define ERROR -1
typedef struct list *PList;
typedef struct Node *PNode;
typedef char *Elem;
struct list{
	int ava;
	PNode head;
	PNode tail;
};
struct No
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值