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

[SQLite]揭秘SQLite:轻松上手数据库的实用示例教程

发布于 2025-06-23 15:08:56
0
139

SQLite是一种轻量级的数据库管理系统,以其小巧、高效、可嵌入和跨平台等特点在嵌入式系统和移动设备中得到广泛应用。本教程将详细介绍SQLite的基本概念、安装配置以及一些实用的示例,帮助您轻松上手S...

SQLite是一种轻量级的数据库管理系统,以其小巧、高效、可嵌入和跨平台等特点在嵌入式系统和移动设备中得到广泛应用。本教程将详细介绍SQLite的基本概念、安装配置以及一些实用的示例,帮助您轻松上手SQLite数据库。

一、SQLite简介

SQLite是一款使用C语言编写的开源数据库软件,它是一个自给自足的数据库引擎,不需要单独的服务器进程。SQLite的主要特点如下:

  • 轻量级:SQLite的体积非常小,大约只有1MB左右,非常适合嵌入式系统和移动设备。
  • 高效:SQLite的性能非常出色,尤其是在处理小规模数据时。
  • 可嵌入:SQLite可以作为应用程序的一部分进行集成,无需单独的服务器进程。
  • 跨平台:SQLite支持多种操作系统,包括Windows、Linux、macOS、Android等。

二、安装与配置

SQLite是一个纯C语言编写的库,因此无需安装,只需将其包含在项目中即可。以下是Windows平台下的安装步骤:

  1. 下载SQLite的Windows版本:SQLite官网
  2. 解压下载的文件到指定的目录,例如C:\SQLite
  3. 在项目中引用SQLite的库文件sqlite3.dll

三、基本操作

以下是SQLite的一些基本操作,包括连接数据库、创建表、插入数据、查询数据等。

1. 连接数据库

#include 
int main() { sqlite3 *db; int rc = sqlite3_open("example.db", &db); if (rc) { fprintf(stderr, "无法打开数据库: %s\n", sqlite3_errmsg(db)); return 1; } fprintf(stdout, "成功打开数据库\n"); sqlite3_close(db); return 0;
}

2. 创建表

#include 
int main() { sqlite3 *db; int rc = sqlite3_open("example.db", &db); if (rc) { fprintf(stderr, "无法打开数据库: %s\n", sqlite3_errmsg(db)); return 1; } char *err_msg = 0; sqlite3_exec(db, "CREATE TABLE IF NOT EXISTS stocks (date text, trans text, symbol text, qty real, price real)", 0, 0, &err_msg); if (err_msg) { fprintf(stderr, "创建表出错: %s\n", err_msg); sqlite3_free(err_msg); } else { fprintf(stdout, "创建表成功\n"); } sqlite3_close(db); return 0;
}

3. 插入数据

#include 
int main() { sqlite3 *db; int rc = sqlite3_open("example.db", &db); if (rc) { fprintf(stderr, "无法打开数据库: %s\n", sqlite3_errmsg(db)); return 1; } char *err_msg = 0; sqlite3_exec(db, "INSERT INTO stocks (date, trans, symbol, qty, price) VALUES ('2022-03-07', 'BUY', 'AAPL', 100, 136.5)", 0, 0, &err_msg); if (err_msg) { fprintf(stderr, "插入数据出错: %s\n", err_msg); sqlite3_free(err_msg); } else { fprintf(stdout, "插入数据成功\n"); } sqlite3_close(db); return 0;
}

4. 查询数据

#include 
int main() { sqlite3 *db; int rc = sqlite3_open("example.db", &db); if (rc) { fprintf(stderr, "无法打开数据库: %s\n", sqlite3_errmsg(db)); return 1; } char *err_msg = 0; sqlite3_stmt *stmt; sqlite3_prepare_v2(db, "SELECT * FROM stocks", -1, &stmt, 0); while (sqlite3_step(stmt) == SQLITE_ROW) { char *date = (char *)sqlite3_column_text(stmt, 0); char *trans = (char *)sqlite3_column_text(stmt, 1); char *symbol = (char *)sqlite3_column_text(stmt, 2); double qty = sqlite3_column_double(stmt, 3); double price = sqlite3_column_double(stmt, 4); printf("%s %s %s %.2f %.2f\n", date, trans, symbol, qty, price); } sqlite3_finalize(stmt); sqlite3_close(db); return 0;
}

四、总结

通过本教程,您应该已经掌握了SQLite的基本概念、安装配置以及一些实用的示例。希望这些内容能够帮助您在项目中更好地使用SQLite数据库。

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

9545

帖子

31

小组

3242

积分

赞助商广告
站长交流