From 7303ef7224c8270b2604180a39e4ef5201f583f8 Mon Sep 17 00:00:00 2001 From: H3ALY Date: Mon, 24 Mar 2025 22:22:30 +0000 Subject: [PATCH] Add scheme for new tables. --- storage/db.go | 42 +++++++++++++++++++++++++++++++++--------- 1 file changed, 33 insertions(+), 9 deletions(-) diff --git a/storage/db.go b/storage/db.go index d18e772..939a05a 100644 --- a/storage/db.go +++ b/storage/db.go @@ -13,18 +13,42 @@ func InitDB(filepath string) *sql.DB { log.Fatal("❌ Failed to open DB:", err) } - createTable := ` - CREATE TABLE IF NOT EXISTS draws ( + // Thunderball results table + createThunderballResultsTable := ` + CREATE TABLE IF NOT EXISTS results_thunderball ( id INTEGER PRIMARY KEY AUTOINCREMENT, - date TEXT, - numbers TEXT, - spend REAL, - return REAL + draw_date TEXT NOT NULL UNIQUE, + machine TEXT, + ballset TEXT, + ball1 INTEGER, + ball2 INTEGER, + ball3 INTEGER, + ball4 INTEGER, + ball5 INTEGER, + thunderball INTEGER );` - _, err = db.Exec(createTable) - if err != nil { - log.Fatal("❌ Failed to create table:", err) + // MyTickets — flexible, multi-game ticket storage + createMyTickets := ` + CREATE TABLE IF NOT EXISTS my_tickets ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + game_type TEXT NOT NULL, + draw_date TEXT NOT NULL, + ball1 INTEGER, + ball2 INTEGER, + ball3 INTEGER, + ball4 INTEGER, + ball5 INTEGER, + bonus1 INTEGER, + bonus2 INTEGER, + created_at DATETIME DEFAULT CURRENT_TIMESTAMP + );` + + if _, err := db.Exec(createThunderballResultsTable); err != nil { + log.Fatal("❌ Failed to create Thunderball table:", err) + } + if _, err := db.Exec(createMyTickets); err != nil { + log.Fatal("❌ Failed to create MyTickets table:", err) } return db