我们在Electron中构建客户端应用,免不了要使用数据库,而看遍种种前端数据库,也只有indexDB、mySQL、SQLite能够满足项目使用要求。经过一系列的性能测试与踩坑之旅,发现SQLite还是较优于其他两种。
本文为在业务流程中使用sql.js的一点小技巧,并非对其原理的深刻研究,如有错误还请诸位海涵。
1.Electron中使用sql.js操纵SQLite数据库
sql.js(https://github.com/kripken/sql.js)通过使用Emscripten编译SQLite C代码,将SQLite移植到Webassembly。 它使用存储在内存中的虚拟数据库文件,因此不会保留对数据库所做的更改。 但是,它允许您导入任何现有的sqlite文件,并将创建的数据库导出为JavaScript类型的数组。
这里没有C绑定或node-gyp编译,sql.js是一个简单的JavaScript文件,可以像任何传统的JavaScript库一样使用。 如果您正在JavaScript中构建本机应用程序(例如,使用Electron),或者在node.js中工作,则您可能更喜欢使用SQLite与JavaScript的本地绑定。
2.安装sql.js
本文所使用的sql.js版本为1.4.0。**npm install sql.js --save**