?? get_all_by_cur.cpp
字號:
#include <sys/types.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <db.h>
#define DATABASE "demo.db"
int main()
{
DB_ENV *myEnv;
DB *dbp;
DBC *cursorp;
DBT key,data;
int ret;
u_int32_t env_flags;
//........... Create an environment object and initialize it for error reporting
ret = db_env_create(&myEnv, 0);
//........If the environment does not exist create it. Initialize the in-memory cache.
env_flags = DB_CREATE | DB_INIT_MPOOL;
//........Open the environment.
ret = myEnv->open(myEnv,"D:/MyDatabase",env_flags,0);
if ((ret = db_create(&dbp, myEnv, 0)) != 0)
{
fprintf(stderr, "db_create: %s\n", db_strerror(ret));
exit (1);
}
// ret=dbp->set_flags(dbp,DB_DUPSORT);
if ((ret =dbp ->open(dbp, NULL, DATABASE, NULL, DB_BTREE, DB_CREATE, 0664)) != 0)
{
dbp->err(dbp, ret, "%s", DATABASE);
exit (1);
}
memset(&key,0,sizeof(DBT));
memset(&data,0,sizeof(DBT));
/* Get a cursor */
dbp->cursor(dbp, NULL, &cursorp, 0);
ret = cursorp->c_get(cursorp, &key, &data, DB_NEXT);
while(ret==0)
{
printf("The key is:%s\nthe data is :%s\n:",(char *)key.data,(char *)data.data);
ret=cursorp->c_get(cursorp,&key,&data,DB_NEXT);
}
/* Close the cursor */
if (cursorp != NULL)
cursorp->c_close(cursorp);
/* Close the database */
if (dbp != NULL)
dbp->close(dbp, 0);
//.........close evn
if (myEnv != NULL)
myEnv->close(myEnv, 0);
return 0;
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -