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

相关推荐
laowangpython5 分钟前
MySQL基础面试通关秘籍(附高频考点解析)
数据库·mysql·其他·面试
mooyuan天天24 分钟前
SQL注入报错“Illegal mix of collations for operation ‘UNION‘”解决办法
数据库·web安全·sql注入·dvwa靶场·sql报错
运维-大白同学40 分钟前
go-数据库基本操作
开发语言·数据库·golang
R-sz1 小时前
通过从数据库加载MinIO配置并初始化MinioClient,spring boot之Minio上传
数据库·oracle
洛阳泰山1 小时前
Windows系统部署MongoDB数据库图文教程
数据库·windows·mongodb
医只鸡腿子1 小时前
3.2/Q2,Charls最新文章解读
数据库·数据挖掘·数据分析·深度优先·数据库开发
bang___bang_2 小时前
PostgreSQL内幕剖析——结构与架构
数据库·postgresql
龙俊亨2 小时前
达梦数据库查看各数据库表内容
数据库
·云扬·4 小时前
【PmHub后端篇】PmHub 中缓存与数据库一致性的实现方案及分析
数据库·缓存
kaixiang3004 小时前
sqli-labs靶场23-28a关(过滤)
数据库·sql