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

相关推荐
NineData4 分钟前
NineData智能数据管理平台新功能发布|2026年1-2月
数据库·sql·数据分析
IvorySQL1 小时前
双星闪耀温哥华:IvorySQL 社区两项议题入选 PGConf.dev 2026
数据库·postgresql·开源
ma_king4 小时前
入门 java 和 数据库
java·数据库·后端
jiayou647 小时前
KingbaseES 实战:审计追踪配置与运维实践
数据库
NineData19 小时前
NineData 迁移评估功能正式上线
数据库·dba
NineData1 天前
数据库迁移总踩坑?用 NineData 迁移评估,提前识别所有兼容性风险
数据库·程序员·云计算
赵渝强老师1 天前
【赵渝强老师】PostgreSQL中表的碎片
数据库·postgresql
全栈老石1 天前
拆解低代码引擎核心:元数据驱动的"万能表"架构
数据库·低代码
倔强的石头_2 天前
kingbase备份与恢复实战(二)—— sys_dump库级逻辑备份与恢复(Windows详细步骤)
数据库
jiayou643 天前
KingbaseES 实战:深度解析数据库对象访问权限管理
数据库