c语言编程笔录

首页 >   > 笔记大全

笔记大全

c语言增删改查

更新时间:2024-12-22

前言

在软件开发过程中,常常需要对数据进行增删改查的操作。这些操作包括向数据库中添加新数据、从数据库中删除数据、修改数据库中的数据以及从数据库中检索数据。使用C语言,我们可以实现这些基本的增删改查功能,并为用户提供一个可靠且高效的数据管理系统。

增加数据

要向数据库中添加新数据,我们首先需要连接到数据库。在C语言中,我们可以使用数据库API或库,如SQLite或MySQL,来建立数据库连接并执行SQL查询。以下是一个示例代码,演示如何向数据库中添加新数据:

#include 
#include 
#include 

int main() {
    sqlite3 *db;
    char *errMsg = 0;
    
    // 连接到数据库
    int rc = sqlite3_open("mydatabase.db", &db);
    
    if (rc) {
        fprintf(stderr, "无法打开数据库: %s\n", sqlite3_errmsg(db));
        return 0;
    } else {
        fprintf(stdout, "成功打开数据库\n");
    }
    
    // 执行添加数据的SQL语句
    char *sql = "INSERT INTO users (id, name) VALUES (1, 'John Doe')";
    rc = sqlite3_exec(db, sql, 0, 0, &errMsg);
    
    if (rc != SQLITE_OK) {
        fprintf(stderr, "添加数据失败:%s\n", errMsg);
        sqlite3_free(errMsg);
    } else {
        fprintf(stdout, "成功添加数据\n");
    }
    
    // 关闭数据库连接
    sqlite3_close(db);
    
    return 0;
}

删除数据

要从数据库中删除数据,我们可以执行DELETE语句。以下是一个示例代码,演示如何从数据库中删除数据:

#include 
#include 
#include 

int main() {
    sqlite3 *db;
    char *errMsg = 0;
    
    // 连接到数据库
    int rc = sqlite3_open("mydatabase.db", &db);
    
    if (rc) {
        fprintf(stderr, "无法打开数据库: %s\n", sqlite3_errmsg(db));
        return 0;
    } else {
        fprintf(stdout, "成功打开数据库\n");
    }
    
    // 执行删除数据的SQL语句
    char *sql = "DELETE FROM users WHERE id = 1";
    rc = sqlite3_exec(db, sql, 0, 0, &errMsg);
    
    if (rc != SQLITE_OK) {
        fprintf(stderr, "删除数据失败:%s\n", errMsg);
        sqlite3_free(errMsg);
    } else {
        fprintf(stdout, "成功删除数据\n");
    }
    
    // 关闭数据库连接
    sqlite3_close(db);
    
    return 0;
}

修改数据

要修改数据库中的数据,我们可以使用UPDATE语句。以下是一个示例代码,演示如何修改数据库中的数据:

#include 
#include 
#include 

int main() {
    sqlite3 *db;
    char *errMsg = 0;
    
    // 连接到数据库
    int rc = sqlite3_open("mydatabase.db", &db);
    
    if (rc) {
        fprintf(stderr, "无法打开数据库: %s\n", sqlite3_errmsg(db));
        return 0;
    } else {
        fprintf(stdout, "成功打开数据库\n");
    }
    
    // 执行修改数据的SQL语句
    char *sql = "UPDATE users SET name = 'Jane Doe' WHERE id = 1";
    rc = sqlite3_exec(db, sql, 0, 0, &errMsg);
    
    if (rc != SQLITE_OK) {
        fprintf(stderr, "修改数据失败:%s\n", errMsg);
        sqlite3_free(errMsg);
    } else {
        fprintf(stdout, "成功修改数据\n");
    }
    
    // 关闭数据库连接
    sqlite3_close(db);
    
    return 0;
}

查询数据

要从数据库中检索数据,我们可以执行SELECT语句。以下是一个示例代码,演示如何从数据库中查询数据:

#include 
#include 
#include 

int callback(void *data, int argc, char **argv, char **azColName) {
    for (int i = 0; i < argc; i++) {
        printf("%s = %s\n", azColName[i], argv[i] ? argv[i] : "NULL");
    }
    
    printf("\n");
    
    return 0;
}

int main() {
    sqlite3 *db;
    char *errMsg = 0;
    
    // 连接到数据库
    int rc = sqlite3_open("mydatabase.db", &db);
    
    if (rc) {
        fprintf(stderr, "无法打开数据库: %s\n", sqlite3_errmsg(db));
        return 0;
    } else {
        fprintf(stdout, "成功打开数据库\n");
    }
    
    // 执行查询数据的SQL语句
    char *sql = "SELECT * FROM users";
    rc = sqlite3_exec(db, sql, callback, 0, &errMsg);
    
    if (rc != SQLITE_OK) {
        fprintf(stderr, "查询数据失败:%s\n", errMsg);
        sqlite3_free(errMsg);
    }
    
    // 关闭数据库连接
    sqlite3_close(db);
    
    return 0;
}

总结

使用C语言,我们可以通过连接到数据库并执行SQL查询来实现基本的增删改查功能。通过编写适当的代码,我们可以向数据库中添加新数据、从数据库中删除数据、修改数据库中的数据以及从数据库中检索数据。这些操作可以帮助我们构建强大的数据管理系统,并为用户提供稳定且高效的数据处理能力。