使用Perl操作DBM数据库

DBM简介:

     DBM是一种文件数据储存数据,由于采用哈希结构进行连接,因此具有一些数据库的特点功能与普通文本数据库相比,具有稳定,检索速度快和支持量大的优点,由于DBM是从Unix系统中移植来的,因此在Unix/linux系统中优点比较明显,而在NT系统中则不太理想,在NT中使用有时会另数据文件变得十分庞大。 
  
DBM的使用: 
    数据库采用关联数组方式保存数据,并与关联数组结合使用。 

打开文件:

dbmopen(%USERFILE,"dbfilename",0666); 此时将把数据值赋给USERFILE关联数组。

关闭文件:

dbmclose(%USERFILE);

打开关闭DBM哈希:

dbmopen(%ARRAYNAME,"dbmfilename",$mode);

参数%ARRAYNAME是哈希变量。这个哈希内部的值会被清理掉,随后和名称为dbmfilename的DBM数据库产生关联;
参数$mode是一个数字,代表权限控制位。常用的设定是0644,代表只有所有者同时有读写权,其他人只有读取权。
如:dbmopen(%FRED,"mydatabase",0644);#开启以%FRED表示的mydatabase文件

关闭:dbmclose(%ARRAYNAME); #结束关联状态

添加数据:

dbmopen(%USERFILE,"dbfilename",0666); 
$USERFILE{$no}=value; 
dbmclose(%USERFILE); 
$no是数组的关联值,必须唯一,否则该关联数据会被更新。

删除数据:

dbmopen(%USERFILE,"dbfilename",0666); 
delete $USERFILE{$no}; 
dbmclose(%USERFILE); 
$no是要删除的关联值。

更新数据:

dbmopen(%USERFILE,"dbfilename",0666); 
$USERFILE{$no}=value; 
dbmclose(%USERFILE);

历遍数组:

dbmopen(%USERFILE,"dbfilename",0644); 
%TEMP=%USERFILE; 
dbmclose(%USERFILE); 
foreach (keys(%TEMP)){ 
$value=$TEMP{$_}; 
}

转载于:https://www.cnblogs.com/summergarden/archive/2013/03/07/2948077.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值