better-sqlite3是基于Node.js的SQLite3最快最简单的库。它提供全事务支持、高性能、效率和安全性以及易于使用的同步API。
GitHub - WiseLibs/better-sqlite3: The fastest and simplest library for SQLite3 in Node.js.
使用以下命令安装:
npm install better-sqlite3 -D
当安装完之后,运行的时候会报如下错误:
de:electron/js2c/asar_bundle:2 Uncaught Error: The module '../node_modules/better-sqlite3/build/Release/better_sqlite3.node'
was compiled against a different Node.js version using
NODE_MODULE_VERSION 108. This version of Node.js requires
NODE_MODULE_VERSION 114. Please try re-compiling or re-installing
the module (for instance, using `npm rebuild` or `npm install`).
at process.func [as dlopen] (node:electron/js2c/asar_bundle:2:1822)
at Module._extensions..node (node:internal/modules/cjs/loader:1326:18)
at Object.func [as .node] (node:electron/js2c/asar_bundle:2:1822)
at Module.load (node:internal/modules/cjs/loader:1096:32)
at Module._load (node:internal/modules/cjs/loader:937:12)
at f._load (node:electron/js2c/asar_bundle:2:13330)
at o._load (node:electron/js2c/renderer_init:2:3109)
at Module.require (node:internal/modules/cjs/loader:1120:19)
at require (node:internal/modules/cjs/helpers:103:18)
at new Database (../node_modules/better-sqlite3/lib/database.js:50:11)
这个错误是因为 Electron 内置的 Node.js 版本和编译到better-sqlite3
的 Node.js 版本不同导致的。
安装electron-rebuild
, 可以全局安装
npm install electron-rebuild -g
也可以在../node_modules/better-sqlite3
目录下,局部安装
npm install electron-rebuild -D
在better-sqlite3
的package.json
中,添加如下scripts
配置
"rebuild": "electron-rebuild -f -w better-sqlite3"
接着运行npm run rebuild
,最后出现如下日志,则表示安装成功。
build 的过程中,如果遇到问题,可以将 node 切换到较新的版本。
本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可