sqlite概述
sqlite简介
SQLite是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它的设计目标是嵌入式的,而且己经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要九百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、 Java等,还有ODBC接口,同样比起Mysql、 PostgreSQL这两款开源的世界著名数据库管理系统来讲,它的处理速度比他们都快。
SQLite官网:https://www.sqlite.org/
SQLite 教程 | 菜鸟教程:https://www.runoob.com/sqlite/sqlite-tutorial.html
BV1t5411875k BV1AL411n7aA
安装sqlite
不管任何系统平台,笔者都建议直接使用C库源码,这样能够提供更好的跨平台编码体验;否则你拷贝源码到不同的平台之后还要安装相应的可执行二进制文件。
不管是使用C库源码还是使用可执行二进制文件,我们都要去官网进行下载,地址为:https://www.sqlite.org/download.html
如果是使用C库源码,下载时选择以
sqlite-amalgamation-版本号
命名的压缩包,解压后即可得到合并后的C语言源码。如果是使用可执行二进制文件,选择相应的平台进行下载即可。
Debian系可以使用
sudo apt install sqlite3
进行安装,使用这种方式可以安装到命令行工具,但是缺少头文件和相应的库。- 搜索头文件所在的包: https://packages.debian.org/index
- 安装相应的包
sudo apt install libsqlite3-dev
SQLite语法
sql
-- 命令行中进入sqlite3
sqlite3
-- 命令行中进入sqlite3,并且把操作保存到文件中
sqlite3 文件名
sqlite3 student.db
-- 命令行中退出sqlite3
.exit
-- 查看帮助手册
.help
表
sql
-- 创建表
CREATE TABLE 表名字(字段名1 数据类型, 字段名2 数据类型, ...);
CREATE TABLE student (id integer, name text, age integer);
CREATE TABLE IF NOT EXISTS 表名字(字段名1 数据类型, 字段名2 数据类型, ...);
CREATE TABLE IF NOT EXISTS student (id integer, name text, age integer);
-- 查看表 显示该数据库内所有的表
.tables
-- 查看表结构 会显示该数据库内所有表的建表语句
.schema
-- 删除表
DROP TABLE 表名;
DROP TABLE student;
-- 插入数据
INSERT INTO 表名 (字段名1, 字段名2, 字段名3, ...) VALUES (值1, 值2, 值3, ...);
INSERT INTO student (id, name, age) VALUES (1, 张三, 12);
INSERT INTO student VALUES (1, 张三, 12);
INSERT INTO student VALUES (1, 张三, 12), (2, 李四, 12), (3, 王五, 12);
-- 查询数据
SELECT * FROM 表名;
SELECT (字段名1, 字段名2, 字段名3, ...) FROM 表名;
SELECT * FROM student;
SELECT (id, name) FROM 表名;
-- 修改数据
UPDATE 表名 SET 字段名1 = 值1, 字段名2 = 值2, ... WHERE 字段名 = 值;
UPDATE student SET age = 13 WHERE name = 张三;
-- 删除数据
DELETE FROM 表名 WHERE 字段名 = 值;
DELETE FROM student WHERE name = 张三;