前言
SQLite是遵守ACID的关系数据库管理系统,它包含在一个相对小的C程序库中。与许多其它数据库管理系统不同,SQLite不是一个客户端/服务器结构的数据库引擎,而是被集成在用户程序中。(维基百科)
安装sqlite
MacOS
- MacOS新版本预装sqlite,如果没有可以使用brew安装
Linux
启动SQLite
直接执行命令
- 只执行一条命令时,也可以不启动SQLite,直接将命令追加到后面
<name>.db
:想要操作的数据库
.show
:一条SQLite命令
数据类型
数据类型 |
备注 |
NULL |
空值 |
int |
整型 |
integer |
带符号的整型。根据值的大小,自动存储在1、2、3、4、6、8字节中 |
real |
浮点型。存储8字节的小数 |
text |
文本型 |
blob |
blob型 |
SQLite命令
注释
查看帮助
打开或创建数据库文件
- SQLite是以文件的形式存储数据的,所以打开一个数据库实质上就是打开一个
.db
文件
<name>
:想要创建或想要打开的数据库文件名
1 2 3
| .open <name>.db
sqlite3 <name>.db
|
查看当前数据库的信息
展示所有数据库
展示所有数据表
备份数据库(导出)
<file>.sql
:导出为sql文件
1
| sqlite3 <name>.db .dump > <file>.sql
|
还原数据库(导入)
1
| sqlite3 <name>.db < <file>.sql
|
SQL语句
创建表
<table_name>
:数据表名
<field_name>
:字段名
<field_type>
:字段类型
PRIMARY KEY
:定义为主键
1 2 3 4
| CREATE TABLE <table_name>( <field_name_1> <field_type_1> PRIMARY KEY, <field_name_2> <field_type_2> );
|
删除表
1
| DROP TABLE <table_name>;
|
插入数据
指定字段
1
| INSERT INTO <table_name>(<field_name_1>, <field_name_2>, ...) VALUES(<value_1>, <value_2>, ...);
|
不指定字段
1
| INSERT INTO <table_name> VALUES(<value_1>, <value_2>, ...);
|
复制表中的数据
指定字段
<new_table_name>
:新的表
<select>
:select语句
1
| INSERT INTO <new_table_name> (<field_name_1>, <field_name_2>, ...) <select>;
|
不指定字段
1
| INSERT INTO <new_table_name> <select>;
|
查询数据
查询所有字段
1
| SELECT * FROM <table_name>;
|
查询指定字段
1
| SELECT <field_name_1>, <field_name_2>, ... FROM <table_name>;
|
限定语句
1
| SELECT * FROM <table_name> WHERE <field_name>=0;
|
运算符
数值运算符
运算符 |
备注 |
+ |
加 |
- |
减 |
* |
乘 |
/ |
除 |
== |
相等 |
!= |
不等 |
<> |
不等 |
> |
大于 |
< |
小于 |
>= |
大于等于 |
<= |
小于等于 |
and |
并且 |
or |
或者 |
is |
是 |
is not |
不是 |
修改数据
<where>
:where子句
1 2 3 4 5
| # 不加where子句表示修改全部数据 UPDATE <table_name> SET <field_name>=<value>
# 加where子句表示修改限定的数据 UPDATE <table_name> SET <field_name>=<value> <where>
|
删除数据
1 2 3 4 5
| DELETE FROM <table_name>
DELETE FROM <table_name> <where>
|
完成