package main import ( "log" "strings" "os" "database/sql" _ "github.com/mattn/go-sqlite3" ) type active_record interface { init(string, int) bool create() bool read() bool update() bool delete() bool } type ActiveSqliteRow struct { id int table_name string columns []string // values map[string] } /* func (r ActiveSqliteRow) init(t string, i int) bool{ log.Print("In init with" + t) log.Print(i) r.id = i r.table_name = t return true } */ type Entity struct { id int user_id int name string spawn_line string } type User struct { id int name string } func prep_query(db *sql.DB, q string) (*sql.Stmt){ statement, err := db.Prepare(q) if err != nil { log.Println(err) log.Println(statement) } return statement } func check(e error) { if e != nil { panic(e) } } func main() { dat, err := os.ReadFile("setup.sql") check(err) log.Printf("contents: \n\n%s", dat) queries := strings.Split(string(dat), ";") log.Print(queries) db, err := sql.Open("sqlite3", "rpgqui.db") check(err) for i, q := range queries { log.Println(i, q) res, err := db.Exec(q) check(err) log.Println(res) } }