中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

c++怎么存取JSON數據到數據庫

小億
113
2024-01-26 17:41:19
欄目: 編程語言

要將JSON數據存儲到數據庫,你可以使用C++中的數據庫連接庫來實現,如MySQL Connector/C++或SQLite C/C++ Interface。

下面是一種將JSON數據存儲到MySQL數據庫的示例代碼:

```cpp

#include

#include

#include

#include

#include

#include

#include

#include

using namespace std;

int main() {

try {

sql::mysql::MySQL_Driver *driver;

sql::Connection *con;

// 創建MySQL連接

driver = sql::mysql::get_mysql_driver_instance();

con = driver->connect("tcp://127.0.0.1:3306", "username", "password");

// 選擇數據庫

con->setSchema("database_name");

// 準備JSON數據

Json::Value json;

json["name"] = "John";

json["age"] = 30;

json["city"] = "New York";

// 插入JSON數據

sql::PreparedStatement *stmt;

stmt = con->prepareStatement("INSERT INTO table_name (json_data) VALUES (?)");

stmt->setString(1, json.toStyledString());

stmt->execute();

delete stmt;

// 查詢數據庫中的JSON數據

sql::Statement *query;

sql::ResultSet *res;

query = con->createStatement();

res = query->executeQuery("SELECT * FROM table_name");

while (res->next()) {

Json::Value result;

Json::Reader reader;

reader.parse(res->getString("json_data"), result);

cout << "Name: " << result["name"].asString() << endl;

cout << "Age: " << result["age"].asInt() << endl;

cout << "City: " << result["city"].asString() << endl;

}

delete res;

delete query;

delete con;

} catch (sql::SQLException &e) {

cout << "MySQL Error: " << e.what() << endl;

}

return 0;

}

```

注意替換代碼中的`username`、`password`、`database_name`和`table_name`為你實際的數據庫信息。這個示例代碼使用MySQL數據庫和JSONcpp庫來處理JSON數據,你還需要下載并安裝相應的庫。

上述代碼的思路是將JSON數據轉換為字符串并存儲到數據庫中的一個字段中,然后在查詢時再將字符串轉換為JSON對象進行解析和處理。你可以根據實際需求進行調整和修改。

0
衡阳市| 南靖县| 资中县| 石家庄市| 讷河市| 沁水县| 盐池县| 重庆市| 孟村| 景德镇市| 精河县| 威海市| 安多县| 凤城市| 将乐县| 宜宾市| 乃东县| 西青区| 禹城市| 简阳市| 吴忠市| 柞水县| 工布江达县| 北流市| 赤壁市| 平江县| 定南县| 明溪县| 万全县| 育儿| 施秉县| 乳山市| 汤原县| 南开区| 合川市| 黑龙江省| 鄯善县| 惠安县| 察隅县| 霍林郭勒市| 策勒县|