nodejs のプロジェクトで sqlite データベースを使用したいと考えています。トランザクションと非同期の動作サポートとなる sqlite のモジュールを探しています。
2 に答える
2
別のオプションはKnexです。これは、sqlite、mysql、および postgres をサポートする軽量のクエリ ビルダーであり、優れたドキュメントがあり、活発に開発されています。Knex は promise と callbacks の両方をサポートしていて、これはいい感じです。
Knex を使用したトランザクションは、単純な Transaction メソッドによってサポートされています。構文のサンプルを次に示します。
http://knexjs.org/#Transaction
Knex.Transaction(function(t) {
Knex('books')
.transacting(t)
.insert({name: 'Old Books'})
.then(function(row) {
return When.all(_.map([
{title: 'Canterbury Tales'},
{title: 'Moby Dick'},
{title: 'Hamlet'}
], function(info) {
info.row_id = row.id;
// Some validation could take place here.
return Knex('book').transacting(t).insert(info);
}));
})
.then(t.commit, t.rollback);
}).then(function() {
console.log('3 new books saved.');
}, function() {
console.log('Error saving the books.');
});
于 2013-08-25T13:07:12.020 に答える
0
これが最良の選択肢のようです: https://github.com/developmentsseed/node-sqlite3
個人的な経験はありませんのでご了承ください。しかし、これは最も人気があり、アクティブであり、トランザクションをサポートしています ( https://github.com/developmentsseed/node-sqlite3/wiki/API#databaseexecsql-callback )。
適切な node.js モジュールを見つけるための良い出発点: https://nodejsmodules.org/tags/sqlite3
于 2013-08-25T12:44:10.920 に答える