C Programer  - 讨论区

标题:ARP dbm 模块编程示例

2014年01月09日 星期四 15:30

简单来说,dbm就是一个嵌入式的key-value数据库,使用很简单,包括open、close、fetch、store、delete等操作,APR提供了一套dbm模块,编程示例如下:

#include <stdio.h>
#include <apr.h>
#include <apr_pools.h>
#include <apr_errno.h>
#include <apr_dbm.h>
#include <apr_strings.h>

int main(int argc,char **argv) {
    apr_initialize();
    apr_pool_t *pool;
    apr_pool_create(&pool,NULL);


    apr_status_t st;
    apr_dbm_t *dbm;
    st=apr_dbm_open(&dbm,"friends",APR_DBM_RWCREATE,APR_OS_DEFAULT ,pool);

    apr_datum_t key,value;
    key.dptr="laomeng";
    key.dsize=strlen(key.dptr);
    
    value.dptr="laomeng188@163.com";
    value.dsize=strlen(value.dptr);
   
    st=apr_dbm_store(dbm,key,value);

    apr_datum_t pvalue;
    st=apr_dbm_fetch(dbm,key,&pvalue);

    char *pstr=apr_pstrndup(pool,pvalue.dptr,pvalue.dsize);
    printf("value => %s\n",pstr);
    
    apr_dbm_close(dbm);

    apr_pool_destroy(pool);
    apr_terminate();
    return 0;
}

参考资料:

http://en.wikipedia.org/wiki/Dbm

http://apr.apache.org/docs/apr-util/1.3/group___a_p_r___util___d_b_m.html

 

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2024

    京ICP备05028076号