无法将数据写入电子应用程序中的asar存档内的sqlite db文件中

时间:2016-06-13 06:30:07

标签: sqlite electron asar

var fs = require('fs');
var SQL = require('sql.js');
var filebuffer = fs.readFileSync('./resources/app.asar/app/data/sample.db');
var db = new SQL.Database(filebuffer);


function save_data(){
  var name=document.getElementById('name').value;
  var ip=document.getElementById('serverip').value;  
  var result=db.each("UPDATE Settings SET Name=$name, IP=$ip WHERE SettingsId=$set",{$name:name,$ip : ip,$set:1},function(row){console.log(row.name)});
  var data = db.export();
  var buffer = new Buffer(data);
  fs.writeFileSync('./resources/app.asar/app/data/sample.db', buffer);
}

我能够从asar存档中的数据库文件中读取数据,但是在将数据写入db文件时,它不会在asar存档中更新。所以请帮我解决这个问题。

1 个答案:

答案 0 :(得分:4)

Asar是一个只读存档。它只是将所有文件连接成一个blob。