node の SQLite

node 操作 SQLite
之前在做 electron 桌面制作番茄钟应用时曾经想过用数据库存储数据,一开始打算mongodb
,但是发现不能实现无服务器,那么只能使用SQLite
了。
介绍:SQLite 是一个软件库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。SQLite 是在世界上最广泛部署的 SQL 数据库引擎。SQLite 源代码不受版权限制
现在先让我们尝试使用 node 来操作SQLite
安装 sqlite3 库
从前面的介绍当中,可以知道,sqlite 是免安装的数据库,所以这里使用数据库就只需要添加一个node
的sqlite3
库就可以了。
安装命令:yarn add sqlite3 -D

创建 sqlite 数据库
当前的 node 项目地址中并没有 sqlite 数据库,所以可以通过命令先创建一个数据库,这里使用new sqlite3.Database
来连接数据库,如果当前没有,会自动创建一个数据库,并且不同于之前操作mongodb
,不用再创建一个集合。
效果:

创建表格并插入数据
有了数据库之后,就需要创建一个数据库表格了
可以创建一个 sql 语句执行方法,此方法可以通过db.run
方法来运行数据 sql 语句
创建数据表 worker
现在数据库表格 worker 已经存在了。
接下来的操作就是在表中插入数据了,这里可以使用db.run
来一次性插入,也可以通过prepare
来分步插入。
现在数据也已经插入到数据库当中了
vs code
的sqlite
插件
对于数据库,最好使用可视化界面去操作,一般对sqlite
都是推荐用 navicate http://www.navicat.com.cn/
不过我这里为了操作快捷,就不用了,在vs code
当中,也存在插件可以对sqlite
数据库进行简单的操作。插件的名称就叫做 SQLite

安装完插件之后,如果想要打开之前创建的sqlite3.db
数据库,需要使用Ctrl+Shift+P
打开命令面板,然后输入sqlite
,找到Open Database
选项打开。

这样在左侧资源管理器界面中会出现SQLITE EXPLORER
这里可以查看之前创建的sqlite3.db
数据库中的表格,在右侧选择创建New Query

会创建一个.sql
文件用于执行 sql 的命令和语句
写入查询表格命令:
鼠标右键选择数据库并运行此 query


接下来对于数据的查询、删除和更新操作其实都与插入类似,其实主要就是在于 sqlite 语句的编写,这里就不详细写了
版权声明: 本文为 InfoQ 作者【空城机】的原创文章。
原文链接:【http://xie.infoq.cn/article/e49b87fc3458c2a2df6ffb0cf】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论