在Web開發中,經常需要從數據庫中獲取數據并以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連接到數據庫并執行查詢操作,將查詢結果以JSON格式輸出。
使用json-c庫可以方便地將數據轉換為JSON格式。在循環中,首先創建一個json_object對象,接著遍歷每一個字段,并將字段名和字段值添加到json_object中。最后使用json_object_to_json_string函數將json_object轉換為JSON字符串并打印輸出。
C語言查詢數據庫返回JSON,非常便捷,值得開發者們在自己的項目中嘗試。
上一篇c 查詢樹形結構json
下一篇c 查詢json