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

c json寫入數據庫中

李中冰1年前9瀏覽0評論

在實際的開發中,我們經常會用C語言作為后端開發語言,并使用JSON作為數據交互格式。在這種情況下,我們需要把JSON數據寫入后端數據庫中,以進一步進行數據處理。下面我們就來看看如何使用C來實現將JSON數據寫入數據庫中吧。

// include頭文件
#include <mysql.h>
#include <ctype.h>
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include <json-c/json.h>
// 插入數據到MySQL表中
int insert_json_data_to_mysql(char* json_data) {
MYSQL* con;
int num_fields;
MYSQL_FIELD *fields;
MYSQL_RES *res;
MYSQL_ROW row;
json_object *json_obj = json_tokener_parse(json_data);
// 從JSON對象中獲取插入MySQL的數據
char *name = json_object_get_string(json_object_object_get(json_obj, "name"));
int age = json_object_get_int(json_object_object_get(json_obj, "age"));
// 連接MySQL數據庫
con = mysql_init(NULL);
if (mysql_real_connect(con, "localhost", "user", "password", "database", 0, NULL, 0) == NULL) {
fprintf(stderr, "%s\n", mysql_error(con));
mysql_close(con);
return -1;
}
// 插入數據到MySQL表中
char sql_statement[2048];
sprintf(sql_statement, "INSERT INTO people (name, age) VALUES ('%s', '%d')", name, age);
if (mysql_query(con, sql_statement)) {
fprintf(stderr, "%s\n", mysql_error(con));
mysql_close(con);
return -1;
}
mysql_close(con);
return 0;
}
int main() {
char* json_string = "{\"name\": \"Tom\", \"age\": 18}";
insert_json_data_to_mysql(json_string);
return 0;
}

上面的代碼演示了如何使用C語言將JSON數據轉換為MySQL數據庫中的記錄。首先使用#include <json-c/json.h>頭文件包括JSON解析庫,然后使用json_tokener_parse()解析JSON數據。我們可以使用json_object_object_get()來獲取JSON對象的內容。

接下來連接到MySQL數據庫。我們使用MySQL C API連接到MySQL數據庫。若連接成功,使用mysql_query()執行一個SQL語句插入數據到MySQL表中。

最后,我們就可以使用我們自己的JSON數據填充數據,使用insert_json_data_to_mysql()插入數據到MySQL表中。