From 77d063867aaff1eacd6360e3950ceb2484f47a72 Mon Sep 17 00:00:00 2001 From: Nathan Coad Date: Tue, 23 Jan 2024 12:20:52 +1100 Subject: [PATCH] set schema version better --- models/db.go | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/models/db.go b/models/db.go index ce30986..5329276 100644 --- a/models/db.go +++ b/models/db.go @@ -232,7 +232,6 @@ func CreateTables() { // Check the database schema version version, _ := GetSchemaVersion() if version < 3 { - // Remove users RoleId column userRoleIdCheck, _ := CheckColumnExists("users", "RoleId") if userRoleIdCheck { @@ -417,9 +416,18 @@ func CreateTables() { } // Set the schema version - if _, err = db.Exec("UPDATE schema SET Version = 3"); err != nil { - log.Printf("Error setting schema to version 3 : '%s'", err) - os.Exit(1) + rowCount, _ = CheckCount("schema") + if rowCount > 0 { + if _, err = db.Exec("UPDATE schema SET Version = 3;"); err != nil { + log.Printf("Error setting schema to version 3 : '%s'", err) + os.Exit(1) + } + } else { + if _, err = db.Exec("INSERT INTO schema (Version) VALUES (3);"); err != nil { + log.Printf("Error setting schema to version 3 : '%s'", err) + os.Exit(1) + } + } } }