摘要:爬山时,当你不再预想时,每一步都不只是一个目标的手段,它本身就是一个独特的事件。支撑生命的是山的侧面,而非顶峰。 —罗伯特·波西格-

常用数据类型

一般数据库采用的固定的静态数据类型,而SQLite采用的是动态数据类型,会根据存入值自动判断。
SQLite使用一个更普遍的动态类型系统。在SQLite中,值的数据类型与值本身是相关的,而不是与它的容器相关。
在存储数据时可以忽略数据类型。

存储类 描述
NULL 值是一个 NULL 值。
INTEGER 值是一个带符号的整数,根据值的大小存储在 1、2、3、4、6 或 8 字节中。
REAL 值是一个浮点值,存储为 8 字节的 IEEE 浮点数字。
TEXT 值是一个文本字符串,使用数据库编码(UTF-8、UTF-16BE 或 UTF-16LE)存储。
BLOB 值是一个 blob 数据,完全根据它的输入存储。

常用命令

.databases  查看所有数据库
.tables  查看数据库中的所有表
.open databasesName 打开数据库
.schema tableName/databaseName 查看建表/库的语句
.quit 退出

创建数据库

数据库以文件形式存在,一个文件就是一个数据库。

sqlite3 DatabaseName.db

创建表

CREATE TABLE database_name.table_name(
   column1 datatype  PRIMARY KEY(one or more columns),
   column2 datatype,
   column3 datatype,
   .....
   columnN datatype,
);

删除列

sqlite3中不存在直接删除列的操作,可以新建一个没有要删除的列的新表,把原表删除后,再给新表改名。
示例:

CREATE TABLE new_students AS SELECT id, name, grade FROM students;
DROP TABLE students;
ALTER TABLE new_students RENAME TO students;

清空数据库

DELETE FROM COMPANY;

常见问题

使用npm执行npm install sqlite3失败时,试试在安装时加上版本号

npm install [email protected]