自研工具库系列: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
}
上一篇下一篇

猜你喜欢

热点阅读