运维

运维

Products

当前位置:首页 > 运维 >

如何将Ubuntu C程序连接到数据库?

96SEO 2025-08-30 09:12 2


在开发过程中,将C程序连接到数据库是一个常见的需求。Ubuntu操作系统因其稳定性和广泛的应用而被许多开发者所青睐。本文将详细介绍如何在Ubuntu环境下将C程序连接到不同的数据库, 包括MySQL、PostgreSQL、MongoDB和SQLite。

准备工作

在开始之前, 请确保您的Ubuntu系统已安装以下软件: - GCC编译器 - MySQL、PostgreSQL、MongoDB或SQLite数据库

Ubuntu C++数据库连接方法

安装方法如下: bash sudo apt-get update sudo apt-get install build-essential sudo apt-get install mysql-server sudo apt-get install postgresql sudo apt-get install mongodb sudo apt-get install sqlite3

连接MySQL数据库

MySQL是一个开源的关系型数据库管理系统。

c

int main { MYSQL *conn; conn = mysql_init;

// 连接数据库
if ) {
    fprintf);
    exit;
}
// 施行SQL查询
if ) {
    fprintf);
    exit;
}
MYSQL_RES *res = mysql_store_result;
// 输出查询后来啊
while ) != NULL) {
    std::cout < row < std::endl;
}
// 清理
mysql_free_result;
mysql_close;
return 0;

}

编译上述代码时 需要链接MySQL客户端库: bash g++ -o myapp -lmysqlclient

请和SQL语句。如果使用第三方库,还需要根据库的文档进行相应的配置和编译。

连接PostgreSQL数据库

PostgreSQL是一个功能强大的开源关系型数据库管理系统。

int main { PGconn *conn; conn = PQconnectdb;

if  != CONNECTION_OK) {
    fprintf);
    PQfinish;
    exit;
}
// 施行SQL查询
PGresult *res = PQexec;
if  != PGRES_TUPLES_OK) {
    fprintf);
    PQclear;
    PQfinish;
    exit;
}
// 输出查询后来啊
for ; i++) {
    std::cout < PQgetvalue < std::endl;
}
// 清理
PQclear;
PQfinish;
return 0;

编译上述代码时 需要链接libpq库: bash g++ -o myapp -lpq

连接MongoDB数据库

MongoDB是一个高性能、可 的文档存储数据库。

cpp

int main { mongocxx::instance inst{&mongocxx::uri{}}; mongocxx::client client{inst};

auto collection = client;
// 插入文档
bsoncxx::builder::stream::document doc;
doc < "name" < "John Doe" < "age" < 30;
auto insert_result = collection.insert_one);
// 查询文档
auto cursor = collection.find;
for  {
    std::cout < bsoncxx::to_json < std::endl;
}
return 0;

编译上述代码时 需要链接libmongocxx库: bash g++ -o myapp -I/usr/local/include -L/usr/local/lib -lmongocxx

连接SQLite数据库

int main { sqlite3 *db; char *errmsg = 0; int rc = sqlite3open;

if  {
    fprintf);
    sqlite3_close;
    return 1;
}
char *sql = "CREATE TABLE IF NOT EXISTS COMPANY("
            "ID INT PRIMARY KEY NOT NULL,"
            "不结盟E TEXT NOT NULL,"
            "AGE INT NOT NULL,"
            "ADDRESS CHAR)";
rc = sqlite3_exec;
if  {
    fprintf;
    sqlite3_free;
} else {
    fprintf;
}
sqlite3_close;
return 0;

本文介绍了如何在Ubuntu环境下将C程序连接到MySQL、 PostgreSQL、MongoDB和SQLite数据库。通过使用相应的数据库API和C++驱动,您可以根据自己的需求选择合适的数据库。希望本文能对您有所帮助。


标签: ubuntu

提交需求或反馈

Demand feedback