Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
4cf82682
T
TDengine
项目概览
taosdata
/
TDengine
1 年多 前同步成功
通知
1185
Star
22016
Fork
4786
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
4cf82682
编写于
12月 05, 2021
作者:
H
Hongze Cheng
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
bdb test
上级
4bcc7778
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
48 addition
and
8 deletion
+48
-8
contrib/test/bdb/bdbTest.c
contrib/test/bdb/bdbTest.c
+48
-8
未找到文件。
contrib/test/bdb/bdbTest.c
浏览文件 @
4cf82682
...
...
@@ -5,25 +5,65 @@
// refer: https://docs.oracle.com/cd/E17076_05/html/gsg/C/BerkeleyDB-Core-C-GSG.pdf
// Access Methods:
// 1. BTree
// 2. Hash
// 3. Queue
// 4. Recno
#define USE_ENV 0
int
main
(
int
argc
,
char
const
*
argv
[])
{
DB
*
dbp
;
DB
*
dbp
=
NULL
;
u_int32_t
db_flags
;
DB_ENV
*
envp
=
NULL
;
u_int32_t
env_flags
;
int
ret
;
u_int32_t
flags
;
DBT
key
,
value
;
DBT
key
,
value
;
// Database records
ret
=
db_create
(
&
dbp
,
NULL
,
0
);
#if USE_ENV
// Initialize an env object and open it for
ret
=
db_env_create
(
&
envp
,
0
);
if
(
ret
!=
0
)
{
exit
(
1
);
fprintf
(
stderr
,
"Error creating env handle: %s
\n
"
,
db_strerror
(
ret
));
return
-
1
;
}
flags
=
DB_CREATE
;
env_flags
=
DB_CREATE
|
DB_INIT_MPOOL
;
ret
=
dbp
->
open
(
dbp
,
NULL
,
"meta.db"
,
NULL
,
DB_BTREE
,
flags
,
0
);
ret
=
envp
->
open
(
envp
,
"./meta"
,
env_flags
,
0
);
if
(
ret
!=
0
)
{
fprintf
(
stderr
,
"Error opening env handle: %s
\n
"
,
db_strerror
(
ret
));
return
-
1
;
}
#endif
// Initialize a DB handle and open the DB
ret
=
db_create
(
&
dbp
,
envp
,
0
);
if
(
ret
!=
0
)
{
exit
(
1
);
}
dbp
->
close
(
dbp
,
0
);
db_flags
=
DB_CREATE
;
ret
=
dbp
->
open
(
dbp
,
/* DB structure pointer */
NULL
,
/* Transaction pointer */
"meta.db"
,
/* On-disk file that holds the database */
NULL
,
/* Optional logical database name */
DB_BTREE
,
/* Database access method */
db_flags
,
/* Open flags */
0
);
/* File mode */
if
(
ret
!=
0
)
{
exit
(
1
);
}
// Close the database
if
(
dbp
!=
NULL
)
{
dbp
->
close
(
dbp
,
0
);
}
if
(
envp
!=
NULL
)
{
envp
->
close
(
envp
,
0
);
}
return
0
;
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录