SQLite 数据库安装及使用(Linux)

发布于:2024-08-09 ⋅ 阅读:(77) ⋅ 点赞:(0)

目录

引言

SQLite 的特点

SQLite 的应用场景

SQLite数据库的安装

方法一:使用包管理器安装

方法二: 从源码编码安装

SQLite数据库的基础命令

1.系统命令 

2.SQL命令

sqlite编程接口


引言

SQLite 是一种轻量级的数据库管理系统,它不需要配置、不需要服务器、不需要运行时的管理。SQLite 实际上是一个嵌入式 SQL 数据库引擎,它允许应用程序以数据库的形式存储、管理和查询数据,而且这一切都是在程序内部完成的,无需依赖外部数据库服务器。

SQLite 的特点

  1. 轻量级:SQLite 的数据库就是一个磁盘上的文件,通常只有几百 KB 大小,这使得它非常适合作为应用程序的组成部分。
  2. 独立性:SQLite 不需要服务器进程或操作系统的支持来运行。读写数据库时,它使用标准的 C 库来调用文件系统。
  3. 零配置:使用 SQLite,您不需要安装或配置数据库服务器。
  4. 事务性:SQLite 完全支持事务,包括原子性、一致性、隔离性和持久性(ACID)等特性。
  5. 跨平台:SQLite 可以在许多不同的操作系统上运行,包括 Windows、Linux、macOS、iOS、Android 等。
  6. 高可用性:SQLite 可以在高并发的环境中运行,并且提供了多种锁定机制来管理对数据库的并发访问。
  7. 功能丰富:尽管 SQLite 的设计是轻量级的,但它提供了丰富的 SQL 语言支持,包括触发器、视图、索引等。

SQLite 的应用场景

  • 移动应用开发:SQLite 是 Android 和 iOS 平台上的标准数据库解决方案,用于存储应用程序的本地数据。
  • 桌面应用开发:对于需要轻量级数据库支持的桌面应用程序,SQLite 是一个很好的选择。
  • 嵌入式系统和设备:由于 SQLite 的轻量级和独立性,它非常适合用于嵌入式系统和设备,如智能家居设备、传感器网络等。
  • 测试和开发:在数据库应用的开发和测试阶段,SQLite 可以作为一个快速原型数据库来使用。

SQLite数据库的安装

方法一:使用包管理器安装

1.更新软件包列表

sudo apt update

2.安装sqlite3

sudo apt install sqlite3

3.验证安装

sqlite3

安装成功

方法二: 从源码编码安装

1.下载SQlite源码:

https://www.sqlite.org/SQLite的官网https://www.sqlite.org/下载

或者直接使用wget命令从命令行下载

wget https://www.sqlite.org/2024/sqlite-autoconf-3460000.tar.gz

2.解压源码包

使用tar命令解压下载的源码包

tar -zxvf sqlite-autoconf-3460000.tar.gz

3.编译安装

进入解压后的源码目录

执行make命令进行编译

make

执行sudo make install命令进行安装

sudo make install

验证同上

SQLite数据库的基础命令

1.系统命令 

 以“.”开头,常用命令如下:

.databases:显示当前连接的所有数据库
.schema:查看当前数据库中所有表的创建语句。
.tables:列出当前数据库中的所有表名
.quit 或 .exit:退出SQLite命令行工具
.help:显示帮助信息,列出所有可用的系统命令和SQL命令
.show:列出当前显示格式的配置,如模式、列宽、分隔符等

2.SQL命令

1.创建数据库

sqlite3 数据库名.db

2.创建表

create table 表名 (列名1 数据类型, 列名2 数据类型, ...);

3.删除表

drop table 表名

4.插入数据

insert into 表名 (列名1, 列名2, ...) values (值1, 值2, ...);

5.更新数据

update 表名 SET 列名1 = 值1, 列名2 = 值2, ... where 条件;

6.删除数据

delete from 表名 where 条件;

7.查询数据

select 列名1, 列名2, ... from 表名 where 条件;

sqlite编程接口

打开一个数据库

int sqlite3_open(
  const char *filename,   /* Database filename (UTF-8) */
  sqlite3 **ppDb          /* OUT: SQLite db handle */
);

执行一条sql语句

int sqlite3_exec(
  sqlite3*,                                  /* An open database */
  const char *sql,                           /* SQL to be evaluated */
  int (*callback)(void*,int,char**,char**),  /* Callback function */
  void *,                                    /* 1st argument to callback */
  char **errmsg                              /* Error msg written here */
);

关闭数据库

int sqlite3 close(sqlite3 *db);
功能:关闭sqlite数据库
返回值:成功返回0,失败返回错误码

更多可查看官网

https://www.sqlite.org/c3ref/funclist.html