溫馨提示×

CentOS下C++數據庫連接如何操作

小樊
93
2025-02-13 12:08:51
欄目: 編程語言

在CentOS系統下,使用C++連接數據庫通常需要使用數據庫提供的客戶端庫。以下是一些常見數據庫的C++連接操作:

  1. MySQL數據庫連接:

首先,確保已經安裝了MySQL客戶端庫??梢允褂靡韵旅畎惭b:

sudo yum install mysql-devel

然后,創建一個C++文件(例如:mysql_example.cpp),并編寫以下代碼:

#include <iostream>
#include <mysql/mysql.h>

int main() {
    MYSQL *conn;
    MYSQL_RES *res;
    MYSQL_ROW row;

    conn = mysql_init(NULL);

    if (!mysql_real_connect(conn, "localhost", "username", "password", "database_name", 0, NULL, 0)) {
        fprintf(stderr, "%s\n", mysql_error(conn));
        exit(1);
    }

    if (mysql_query(conn, "SHOW TABLES")) {
        fprintf(stderr, "%s\n", mysql_error(conn));
        exit(1);
    }

    res = mysql_store_result(conn);

    while ((row = mysql_fetch_row(res))) {
        std::cout << row[0] << std::endl;
    }

    mysql_free_result(res);
    mysql_close(conn);

    return 0;
}

編譯并運行:

g++ mysql_example.cpp -o mysql_example -lmysqlclient
./mysql_example
  1. PostgreSQL數據庫連接:

首先,確保已經安裝了PostgreSQL客戶端庫??梢允褂靡韵旅畎惭b:

sudo yum install postgresql-devel

然后,創建一個C++文件(例如:postgresql_example.cpp),并編寫以下代碼:

#include <iostream>
#include <pqxx/pqxx>

int main() {
    pqxx::connection C("dbname=database_name user=username password=password hostaddr=127.0.0.1 port=5432");

    if (C.is_open()) {
        std::cout << "Opened database successfully: " << C.dbname() << std::endl;
    } else {
        std::cout << "Can't open database" << std::endl;
        return 1;
    }

    pqxx::work W(C);

    pqxx::result R = W.exec("SELECT * FROM table_name");

    for (auto row : R) {
        std::cout << row[0].as<std::string>() << std::endl;
    }

    W.commit();

    return 0;
}

編譯并運行:

g++ postgresql_example.cpp -o postgresql_example -lpqxx -lpq
./postgresql_example

注意:這里的示例代碼僅用于演示如何連接數據庫并執行簡單的查詢。實際應用中,需要根據具體需求編寫相應的代碼。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女