首页 话题 小组 问答 好文 用户 我的社区 域名交易 唠叨

[SQLite]揭秘SQLite:C语言轻松上手数据库编程全攻略

发布于 2025-06-23 14:53:02
0
115

SQLite是一种轻量级的数据库管理系统,它使用C语言编写,并支持标准的SQL数据库操作。由于其简单易用和资源占用少的特点,SQLite被广泛应用于嵌入式系统、移动应用和桌面应用程序中。本文将详细介绍...

SQLite是一种轻量级的数据库管理系统,它使用C语言编写,并支持标准的SQL数据库操作。由于其简单易用和资源占用少的特点,SQLite被广泛应用于嵌入式系统、移动应用和桌面应用程序中。本文将详细介绍如何使用C语言进行SQLite数据库编程。

1. SQLite环境搭建

在开始编程之前,需要搭建SQLite的编程环境。

1.1 获取SQLite源码

首先,从SQLite官网下载源码。SQLite官网提供了SQLite的源码和预编译的二进制文件。

wget https://www.sqlite.org/2023/sqlite-amalgamation-3320100.zip
unzip sqlite-amalgamation-3320100.zip

1.2 配置VC开发环境

在Windows平台上,需要配置VC开发环境。

  • sqlite3.h文件放置在VC6安装路径中的Include文件夹中。
  • sqlite3.dll文件放置在C:\Windows\System32文件夹中。
  • sqlite3.lib文件放置在VC6安装路径中的LIB文件夹中。

1.3 配置Linux开发环境

在Linux平台上,可以使用以下命令安装SQLite:

sudo apt-get install sqlite3 libsqlite3-dev

2. SQLite基本操作

以下是使用C语言进行SQLite数据库编程的基本操作。

2.1 创建数据库

#include 
int main() { sqlite3 *db; char *err_msg = 0; // 打开数据库 if (sqlite3_open("test.db", &db) != SQLITE_OK) { fprintf(stderr, "无法打开数据库: %s\n", sqlite3_errmsg(db)); sqlite3_close(db); return 1; } // 创建表 const char *sql = "CREATE TABLE IF NOT EXISTS test (id INTEGER PRIMARY KEY, name TEXT);"; char *err_msg = 0; if (sqlite3_exec(db, sql, 0, 0, &err_msg) != SQLITE_OK) { fprintf(stderr, "SQL 错误: %s\n", err_msg); sqlite3_free(err_msg); } // 关闭数据库 sqlite3_close(db); return 0;
}

2.2 插入数据

const char *sql = "INSERT INTO test (name) VALUES ('张三');";
if (sqlite3_exec(db, sql, 0, 0, &err_msg) != SQLITE_OK) { fprintf(stderr, "SQL 错误: %s\n", err_msg); sqlite3_free(err_msg);
}

2.3 查询数据

const char *sql = "SELECT * FROM test;";
sqlite3_stmt *stmt;
if (sqlite3_prepare_v2(db, sql, -1, &stmt, 0) != SQLITE_OK) { fprintf(stderr, "SQL 错误: %s\n", sqlite3_errmsg(db)); sqlite3_close(db); return 1;
}
while (sqlite3_step(stmt) == SQLITE_ROW) { int id = sqlite3_column_int(stmt, 0); const char *name = (const char *)sqlite3_column_text(stmt, 1); printf("ID: %d, Name: %s\n", id, name);
}
sqlite3_finalize(stmt);

2.4 更新数据

const char *sql = "UPDATE test SET name = '李四' WHERE id = 1;";
if (sqlite3_exec(db, sql, 0, 0, &err_msg) != SQLITE_OK) { fprintf(stderr, "SQL 错误: %s\n", err_msg); sqlite3_free(err_msg);
}

2.5 删除数据

const char *sql = "DELETE FROM test WHERE id = 1;";
if (sqlite3_exec(db, sql, 0, 0, &err_msg) != SQLITE_OK) { fprintf(stderr, "SQL 错误: %s\n", err_msg); sqlite3_free(err_msg);
}

3. 总结

本文介绍了如何使用C语言进行SQLite数据库编程。通过以上步骤,你可以轻松地创建数据库、插入数据、查询数据、更新数据以及删除数据。希望本文能帮助你快速上手SQLite数据库编程。

评论
一个月内的热帖推荐
啊龙
Lv.1普通用户

9545

帖子

31

小组

3242

积分

赞助商广告
站长交流