背景
我正在尝试在 Electron 应用程序中使用 sqlite3 和 sqlcipher 加密我的 sqlite 数据库。
在 sqlite3 npm 页面上
它说要像这样安装构建,
纱线添加 sqlite3@4.0.8 --build-from-source --sqlite_libname=sqlcipher --sqlite=
brew --prefix
--runtime=electron --target=4.0.0 --dist-url= https://atom.io/download /电子
我已经用 home brew 安装了 sqlcipher。
brew install sqlcipher
问题示例
我正在尝试在我的 Electron 应用程序中创建一个这样的加密数据库,
const sqlite3 = require('sqlite3').verbose();
var db = new sqlite3.Database('./src/encryptedDB.sql');
db.serialize(function() {
db.run("PRAGMA KEY = 'secret'");
db.run("PRAGMA CIPHER = 'aes-256-cbc'");
db.run('CREATE TABLE IF NOT EXISTS clients (info TEXT)');
var stmt = db.prepare('INSERT INTO clients VALUES (?)');
for (var i = 0; i < 10; i++) {
stmt.run('wunO Background Client Number - ' + i);
}
stmt.finalize();
});
这不是创建加密数据库。我可以打开文件并查看其中的数据。
问题
我试图弄清楚这是否是我的语法的一个简单问题,或者当电子构建器在后台运行它时,它是不是很神奇,它正在重建 sqlite 并删除sqlcipher
构建。
如何创建可在 MacOS 和 Windows 上运行的加密 sqlite 构建。