加入收藏 | 设为首页 | 会员中心 | 我要投稿 百客网 - 百科网 (https://www.baikewang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Unix > 正文

UNIX数据库简介

发布时间:2022-10-26 11:10:42 所属栏目:Unix 来源:
导读:  dbm是一个在UNIX系统中很流行的数据库函数库,之后发展了新库db。db库支持三种不同的访问模式:面向记录、散列和B树,但是没有提供并发控制。

  列出了4种操作系统常用的数据库函数库。注意在linux上,gdb
  dbm是一个在UNIX系统中很流行的数据库函数库,之后发展了新库db。db库支持三种不同的访问模式:面向记录、散列和B树,但是没有提供并发控制。
 
  列出了4种操作系统常用的数据库函数库。注意在linux上,gdbm既支持dbm函数库,又支持ndbm函数库。
 
  然而打开man手册后发现,glibc在2.2版本及以后将不再提供db的功能接口函数,而由libdb库代替。可以输入命令”ldd --version”可以看到当前的glibc版本为2.23。
 
  这次小研首先介绍libdb(Berkeley DB),系统需要安装libdb包,使用命令“sudo apt install libpq-dev”。
 
  01
 
  插入数据
 
  首先了解如何插入数据,使用函数“db_create”初始化一个Berkeley DB数据库的句柄,之后调用DB结构体中的函数指针“open”打开file数据库,其中“DB_BTREE”表示B-Tree(平衡多路树),除了这种格式,还支持Hash,Queue和Recno。“DB_CREATE”表示若”mydb.db”不存在则创建。
 
  之后输入编译命令“gcc put.c -ldb -o put.cgi”,执行“./put.cgi”,首次执行并无异常,再次执行后,提示“key”重复。
 
  02
 
  读取数据
 
  接着了解如何获取数据,前面处理和插入数据类似,后面调用使用DB结构体中的函数指针“get”获取数据库“mydb.db”中的数据。
 
  之后输入编译命令“gcc get.c -ldb -o get.cgi”,执行“./get.cgi”,可以看到之前的插入数据“xike”。
 
  03
 
  删除数据
 
  然后了解如何删除数据,前面处理和插入数据类似,后面调用使用DB结构体中的函数指针“del”删除数据库“mydb.db”中的指定key为“1000”数据。
 
  之后输入编译命令“gcc del.c -ldb -o del.cgi”,执行“./del.cgi”,发现执行并无异常,之后再次执行“./get.cgi”将无法查询到值,若再次执行“./del.cgi”将会报错。
 
  04
 
  总结
 
  Berkeley DB作为文件数据库,介于关系数据库与内存数据库之间,拥有访问速度快,节约空间等优点,但是默认并不提供查询语句,只有对应c接口。这次介绍的也是数据库函数与UNIX的接口,之后如果大家感兴趣unix数据库,还会介绍如何开发一个简单的、多用户环境库的C函数库。
 

(编辑:百客网 - 百科网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章