NodeJS sqlite3并发访问
基本上我有一个数据库没有多less出现,但可悲的是两个分组。
首先,对数据库有一个写访问权限。其次,有一个读访问权限。
读访问失败,并显示数据库被locking的消息( { [Error: SQLITE_BUSY: database is locked] errno: 5, code: 'SQLITE_BUSY' }
),这是完全正常的。 但是,我怎样才能让我的读取访问等待数据库closures?
我目前的代码:
var sql = "INSERT INTO chickenmilk (userID,channelID,message) VALUES (?,?,?)" db.run(sql, userID, channelID, bot.fixMessage(message), function(err) { console.log(err); db.close(); });
并发:
var sql = "SELECT userID, COUNT(message) as count FROM chickenmilk WHERE channelID LIKE ? GROUP BY userID"; db.all(sql, data, function(err,res) { if(err) { console.log(err); return ""; } callback(res); // data is used here db.close(); });