godose/db.go
Pratyush Desai d2a253fb24
Initialized
Add basic CRUD operations for the doselogging
and a list command.

Signed-off-by: Pratyush Desai <pratyush.desai@liberta.casa>
2025-06-14 18:16:55 +05:30

33 lines
544 B
Go

package main
import (
"database/sql"
"log"
_ "github.com/mattn/go-sqlite3"
)
func initDB() *sql.DB {
db, err := sql.Open("sqlite3", "./doses.db")
if err != nil {
log.Fatal(err)
}
createTable := `
CREATE TABLE IF NOT EXISTS doses (
id INTEGER PRIMARY KEY AUTOINCREMENT,
time TEXT NOT NULL,
substance TEXT NOT NULL,
dose REAL NOT NULL,
unit TEXT NOT NULL,
roa TEXT,
notes TEXT
);
`
if _, err := db.Exec(createTable); err != nil {
log.Fatal(err)
}
return db
}