pure-Go SQLite driver for Go (SQLite embedded)
This is a pure-Go SQLite driver for Golang’s native database/sql package.
The driver has Go-based implementation of SQLite embedded in itself (so, you don’t need to install SQLite separately)
package main
import (
"database/sql"
"log"
_ "github.com/glebarez/go-sqlite"
)
func main() {
// connect
db, err := sql.Open("sqlite", ":memory:")
if err != nil {
log.Fatal(err)
}
// get SQLite version
_ := db.QueryRow("select sqlite_version()")
}
":memory:"
"path/to/some.db"
":memory:?_pragma=foreign_keys(1)"
Any SQLIte pragma can be preset for a Database connection using _pragma
query parameter. Examples:
path/to/some.db?_pragma=journal_mode(WAL)
:memory:?_pragma=busy_timeout(5000)
Multiple PRAGMAs can be specified, e.g.:
path/to/some.db?_pragma=busy_timeout(5000)&_pragma=journal_mode(WAL)