package sqlite import ( "github.com/jmoiron/sqlx" _ "github.com/mattn/go-sqlite3" ) var db *sqlx.DB func OpenDb(fname string) (*sqlx.DB, error) { conn, err := sqlx.Open("sqlite3", fname+"?cache=shared&mode=rwc&_journal_mode=WAL") if err != nil { return nil, err } conn.SetMaxOpenConns(1) // sqlite3 does not support multiple connections db = conn return conn, nil } func CloseDb() error { if db != nil { return db.Close() } return nil } func GetDb() *sqlx.DB { return db }