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);
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/227748.html
標籤:其他數據庫
