ITPub博客

首页 > 数据库 > 国内数据库 > GBase C API 应用示例

GBase C API 应用示例

原创 国内数据库 作者:yy_2828 时间:2020-11-25 10:45:32 0 删除 编辑

1. 使用 GBase C API 创建连接

GBASE* gbase=NULL;

/* 初始化 GBASE 结构体*/

if(!(gbase = gbase_init(0)))

{

fprintf(stderr, " 不能初始化 GBASE 结构体!\n");

exit(1);

}

/* 数据库连接*/

if(!gbase_real_connect(gbase, host, user, passwd, db, port, NULL, 0))

{

fprintf(stderr, "\n%s\n", gbase_error(gbase));

exit(1);

}

/* 释放数据库连接句柄*/

gbase_close(gbase);

2. 使用 GBase C API 执行 SQL 语句

/* 数据库连接*/

if(!gbase_real_connect(gbase, host, user, passwd, db, port,

NULL, 0))

{

fprintf(stderr, "\n%s\n", gbase_error(gbase));

exit(1);

}

gbase->reconnect = 1;

/* 在数据库中创建表*/

if(gbase_query(gbase, sql_drop_table))

{

fprintf(stderr, "%s", gbase_error(gbase));

exit(1);

}

if(gbase_query(gbase, sql_create_table))

{

fprintf(stderr, "\n%s\n", gbase_error(gbase));

exit(1);

}

/* 向数据库表中插入数据*/

for(i=0; i<NUM_INSERT; i++)

{

id[i] = i;

sprintf(name[i], "name_%d", i);

}

for(i=0; i<NUM_INSERT; i++)

{

sprintf(sql_insert, insert_mode, id[i], name[i]);

if(gbase_query(gbase, sql_insert))

{

fprintf(stderr, "\n%s\n", gbase_error(gbase));

exit(1);

}

}

/* 从数据库表中选择出数据,并显示*/

if(gbase_query(gbase, sql_select))

{

fprintf(stderr, "\n%s\n", gbase_error(gbase));

exit(1);

}

res = gbase_store_result(gbase);

printf(" 插入操作后表的内容\n");

if(res)

{

num_fields = gbase_num_fields(res);

while(fields = gbase_fetch_field(res))

{

printf("\t| %s ", fields->name);

}

printf("\t|\n");

while((row = gbase_fetch_row(res)) != NULL)

{

for(i=0; i < num_fields; i++)

{

printf("\t| %s ", row[i]);

}

printf("\t|\n");

}

}

/* 更新数据库表中数据*/

sprintf(sql_update, update_mode, id[0]);

if(gbase_query(gbase, sql_update))

{

fprintf(stderr, "\n%s\n", gbase_error(gbase));

exit(1);

}

printf(" 更新操作后表的内容\n");

print_table(gbase, "g_demo1");

/* 删除数据库表中数据*/

sprintf(sql_delete, delete_mode, id[1]);

if(gbase_query(gbase, sql_delete))

{

fprintf(stderr, "\n%s\n", gbase_error(gbase));

exit(1);

}

printf(" 删除操作后表的内容\n");

print_table(gbase, "g_demo1");

/* 释放结果集*/

gbase_free_result(res);

/* 释放数据库连接句柄*/

gbase_close(gbase);

}


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69989309/viewspace-2736696/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2020-11-25

  • 博文量
    3
  • 访问量
    1350