Awesome Go

gosql

CategoryDatabase
SubcategorySQL Query Builders
Stars0

SQL Query builder with better null values support

About gosql

GoSQL

Go Reference codecov

Query builder with some handy utility functions.

Documentation

For full documentation see the pkg.go.dev.

Examples

// Open database and create connection
sqliteDB, _ := sql.Open("sqlite3", "my-db.sql")
db := gosql.New(sqliteDB)

// Define a struct that includes a primary key
type User struct {
    ID       int `idx:"primary"`
    Email    string
    IsActive bool
}

// Insert a row into the table
db.Insert(&User{
    ID: 1,
    Email: "[email protected]",
    IsActive: true,
})

// Select a row from the table
var user User
db.Select("*").Where("id = ?", 1).Get(&user)

// Update the row in the table
user.Email = "[email protected]"
db.Update(&user)

// Delete the row from the table
db.Delete(&user)

Benchmarks

BenchmarkInsert-10            	    5637	    209484 ns/op	     448 B/op	      23 allocs/op
BenchmarkUpdate-10            	   90866	     12887 ns/op	     576 B/op	      27 allocs/op
BenchmarkSelect-10            	   90318	     13125 ns/op	     768 B/op	      41 allocs/op
BenchmarkSelectMany-10        	   12435	     96761 ns/op	   10640 B/op	     838 allocs/op
BenchmarkSelectManyPtrs-10    	   10000	    100512 ns/op	   11248 B/op	     938 allocs/op

Contribute

Make a pull request

Frequently Asked Questions

What is gosql?

gosql is a Database library for the Go programming language. SQL Query builder with better null values support

How do I install gosql?

Install gosql with the Go module system using `go get twharmon/gosql`. Check the repository for the current installation instructions.

What category does gosql belong to?

gosql is listed under Database, specifically SQL Query Builders.

← Back to SQL Query Builders