色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

c 查詢數(shù)據(jù)庫返回json

洪振霞1年前7瀏覽0評論

在Web開發(fā)中,經(jīng)常需要從數(shù)據(jù)庫中獲取數(shù)據(jù)并以JSON格式返回,這時可以使用C語言來編寫查詢語句。

#include <stdio.h>
#include <stdlib.h>
#include <mysql.h>
#include <json-c/json.h>
int main()
{
MYSQL mysql;
MYSQL_RES *result;
MYSQL_ROW row;
MYSQL_FIELD *field;
int num_fields, i;
mysql_init(&mysql);
mysql_real_connect(&mysql, "localhost", "username", "password", "database", 0, NULL, 0);
mysql_query(&mysql, "SELECT * FROM table");
result = mysql_store_result(&mysql);
num_fields = mysql_num_fields(result);
while((row = mysql_fetch_row(result)))
{
json_object *json = json_object_new_object();
for(i = 0; i< num_fields; i++)
{
field = mysql_fetch_field_direct(result, i);
json_object_object_add(json, field->name,
json_object_new_string(row[i] ? row[i] : ""));
}
printf("%s\n", json_object_to_json_string(json));
json_object_put(json);
}
mysql_free_result(result);
mysql_close(&mysql);
return 0;
}

以上代碼使用MySQL C API連接到數(shù)據(jù)庫并執(zhí)行查詢操作,將查詢結(jié)果以JSON格式輸出。

使用json-c庫可以方便地將數(shù)據(jù)轉(zhuǎn)換為JSON格式。在循環(huán)中,首先創(chuàng)建一個json_object對象,接著遍歷每一個字段,并將字段名和字段值添加到j(luò)son_object中。最后使用json_object_to_json_string函數(shù)將json_object轉(zhuǎn)換為JSON字符串并打印輸出。

C語言查詢數(shù)據(jù)庫返回JSON,非常便捷,值得開發(fā)者們在自己的項目中嘗試。