Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/floattech/sqlite

A pure-go wrapper for database/sql using fumiama/sqlite3
https://github.com/floattech/sqlite

database go golang no-cgo sqlite sqlite3 sqlite3-orm

Last synced: 4 days ago
JSON representation

A pure-go wrapper for database/sql using fumiama/sqlite3

Awesome Lists containing this project

README

        

# sqlite
A pure-go wrapper for database/sql using logoove/sqlite

## Usage

### 1. Replace modified sqlite lib in your go.mod
```bash
replace modernc.org/sqlite => github.com/fumiama/sqlite3 v1.29.10-simp

replace modernc.org/libc => github.com/fumiama/libc v0.0.0-20240530081950-6f6d8586b5c5
```

### 2. Use it
```go
type row struct {
ID int // pk
Name string
}

db := &sql.Sqlite{DBPath: "demo.db"}
err := db.Open(time.Hour)
if err != nil {
panic(err)
}

err = db.Create("demotable", &row{})
if err != nil {
panic(err)
}

err = db.Insert("demotable", &row{ID: 123, Name: "Anna"})
if err != nil {
panic(err)
}

var r row
err = db.Find("demotable", &r, "WHERE ID=123")
if err != nil {
panic(err)
}
fmt.Println(r)
```