自研工具库系列:node-sqlite-updater 一款no
2021-07-21 本文已影响0人
jiaming_
node-sqlite-updater
基于nodejs的客户端或服务端使用sqlite3时,对数据库文件进行版本管理升级的辅助工具库,对Electron+sqlite3+typeorm应用友好。
源码地址
zhujiaming/node-sqlite-updater: nodejs-sqlite3 数据库版本管理与升级 (github.com)
欢迎批评指教与反馈问题和意见,喜欢的老铁可以给个star鼓励下。
接入
npm i node-sqlite-updater
使用
const dbFile = path.join("",'test.db')//目标数据库文件
const DB_VERSION = 1 //当前应用对应的当前数据库文件版本,每次+1会触发升级,默认从1开始。
const dbupgradeImpl = new DbUpgradeImpl() //数据库升级的具体内容是抽象接口,交给业务实现,参考./example/upgrade-impl.ts。
function beforInitDB() {
let dbUpdater = new DbUpdater({
vercode: 1,
database: dbFile,
logging: true, //是否打印日志
upgradeImpl: dbupgradeImpl
});
dbUpdater
.init()
.then(res => {
console.log('db update res',res)
initDB() //成功后继续正常db init
}).catch(e => {
console.error('db update err', e)
});
}
function initDB(){
// custom init db
}