修复 v2.4.0 的默认数据库版本号不对导致无法启动问题

This commit is contained in:
lyswhut
2023-09-09 15:52:51 +08:00
parent 63590119bb
commit 3c145c7dd7
4 changed files with 19 additions and 53 deletions
+2 -2
View File
@@ -1,6 +1,6 @@
import Database from 'better-sqlite3'
import path from 'path'
import tables from './tables'
import tables, { DB_VERSION } from './tables'
import verifyDB from './verifyDB'
import migrateData from './migrate'
@@ -10,7 +10,7 @@ let db: Database.Database
const initTables = (db: Database.Database) => {
db.exec(`
${Array.from(tables.values()).join('\n')}
INSERT INTO "main"."db_info" ("field_name", "field_value") VALUES ('version', '1');
INSERT INTO "main"."db_info" ("field_name", "field_value") VALUES ('version', '${DB_VERSION}');
`)
}
+14 -9
View File
@@ -1,4 +1,5 @@
import type Database from 'better-sqlite3'
import { DB_VERSION } from './tables'
// const migrateV1 = (db: Database.Database) => {
// const sql = `
@@ -26,15 +27,19 @@ import type Database from 'better-sqlite3'
// }
const migrateV1 = (db: Database.Database) => {
const sql = `
CREATE TABLE "dislike_list" (
"type" TEXT NOT NULL,
"content" TEXT NOT NULL,
"meta" TEXT
);
`
db.exec(sql)
db.prepare('UPDATE "main"."db_info" SET "field_value"=@value WHERE "field_name"=@name').run({ name: 'version', value: '2' })
// 修复 v2.4.0 的默认数据库版本号不对的问题
const existsTable = db.prepare('SELECT name FROM "main".sqlite_master WHERE type=\'table\' AND name=\'dislike_list\';').get()
if (!existsTable) {
const sql = `
CREATE TABLE "dislike_list" (
"type" TEXT NOT NULL,
"content" TEXT NOT NULL,
"meta" TEXT
);
`
db.exec(sql)
}
db.prepare('UPDATE "main"."db_info" SET "field_value"=@value WHERE "field_name"=@name').run({ name: 'version', value: DB_VERSION })
}
export default (db: Database.Database) => {
+2
View File
@@ -214,3 +214,5 @@ tables.set('dislike_list', `
`)
export default tables
export const DB_VERSION = '2'