sqlites数据库读取,仅适用于数据少的数据库查询

直接上代码:

objectivec 复制代码
##该代码需要替换数据库名称test.db 表名name##

#include <stdio.h>
#include <sqlite3.h>

static int callback(void *data, int argc, char **argv, char **azColName) {
    int i;
    static int lines = 0;
    
    for (i = 0; i < argc; i++) {
        printf("[%d] %s = %s\n", i, azColName[i], argv[i] ? argv[i] : "NULL");
    }
    lines++;
    printf("第%d行数据查询完毕...\n", lines);
    return 0;
}

int main() {
    sqlite3 *db;
    char *errMsg = 0;
    int rc;

    // 打开数据库连接
    rc = sqlite3_open("test.db", &db);
    if (rc) {
        fprintf(stderr, "无法打开数据库: %s", sqlite3_errmsg(db));
        return 0;
    } else {
        fprintf(stdout, "成功打开数据库 \n");
    }

    // 查询users表中的所有记录
    const char *sql = "SELECT * FROM name;";
    rc = sqlite3_exec(db, sql, callback, 0, &errMsg);
    if (rc != SQLITE_OK) {
        fprintf(stderr, "SQL错误: %s", errMsg);
        sqlite3_free(errMsg);
    } else {
        fprintf(stdout, "查询成功");
    }

    // 关闭数据库连接
    sqlite3_close(db);

    return 0;
}

可使用以下链接代码生成的数据库验证

http://t.csdnimg.cn/Vsv9O

相关推荐
了一li1 小时前
Qt中的QProcess与Boost.Interprocess:实现多进程编程
服务器·数据库·qt
码农君莫笑1 小时前
信管通低代码信息管理系统应用平台
linux·数据库·windows·低代码·c#·.net·visual studio
别致的影分身2 小时前
使用C语言连接MySQL
数据库·mysql
京东零售技术3 小时前
“慢”增长时代的企业数据体系建设:超越数据中台
数据库
sdaxue.com3 小时前
帝国CMS:如何去掉帝国CMS登录界面的认证码登录
数据库·github·网站·帝国cms·认证码
o(╥﹏╥)4 小时前
linux(ubuntu )卡死怎么强制重启
linux·数据库·ubuntu·系统安全
阿里嘎多学长4 小时前
docker怎么部署高斯数据库
运维·数据库·docker·容器
Yuan_o_5 小时前
Linux 基本使用和程序部署
java·linux·运维·服务器·数据库·后端
Sunyanhui15 小时前
牛客网 SQL36查找后排序
数据库·sql·mysql
老王笔记5 小时前
MHA binlog server
数据库·mysql