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

相关推荐
m0_716255001 分钟前
批处理一道例题+答案解析+批处理知识点总结 | 批处理高频易错场景 + 正确写法对照表
数据库·oracle
2401_824222693 分钟前
HTML怎么标注字数限制提示_HTML实时字数统计占位【详解】
jvm·数据库·python
稀饭过霍18 分钟前
数据类型【TINYINT、SMALLINT、INT、BIGINT、decimal(18,2)】表示意思
数据库
俺不要写代码22 分钟前
数据库:DML
数据库·oracle
这个DBA有点耶25 分钟前
两张百万级大表JOIN跑崩了?试试这3招
数据库·代码规范
IntMainJhy31 分钟前
「Flutter三方库sqflite的鸿蒙化适配与实战指南:从入门到踩坑的本地数据库开发全记录」
数据库·flutter·华为·信息可视化·数据库开发·harmonyos
counting money1 小时前
Spring框架基础(依赖注入-全注解形式)
java·数据库·spring
计算机安禾1 小时前
【Linux从入门到精通】第33篇:数据库MySQL/MariaDB安装与基础调优
linux·数据库·mysql
瀚高PG实验室1 小时前
ERROR: invalid input syntax for type integer: “a“
数据库·瀚高数据库
S1998_1997111609•X1 小时前
论next/js在打击省份及犯罪行为集团的系统分析[特殊字符]设计
网络·数据库·百度·ssh·开闭原则