package
1.0.4
Repository: https://github.com/gavin2014/lib.git
Documentation: pkg.go.dev

# Packages

No description provided by the author

# README

gocraft/dbr (database records)

GoDoc FOSSA Status Go Report Card CircleCI

gocraft/dbr provides additions to Go's database/sql for super fast performance and convenience.

$ go get -u github.com/gocraft/dbr
import "github.com/gocraft/dbr"

Driver support

  • MySQL
  • PostgreSQL
  • SQLite3

Examples

See godoc for more examples.

Open connections

{{ "ExampleOpen" | example }}

Create and use Tx

{{ "ExampleTx" | example }}

SelectStmt loads data into structs

{{ "ExampleSelectStmt_Load" | example }}

SelectStmt with where-value interpolation

{{ "ExampleSelectStmt_Where" | example }}

SelectStmt with joins

{{ "ExampleSelectStmt_Join" | example }}

SelectStmt with raw SQL

{{ "ExampleSelectBySql" | example }}

InsertStmt adds data from struct

{{ "ExampleInsertStmt_Record" | example }}

InsertStmt adds data from value

{{ "ExampleInsertStmt_Pair" | example }}

Benchmark (2018-05-11)

BenchmarkLoadValues/sqlx_10-8         	    5000	    407318 ns/op	    3913 B/op	     164 allocs/op
BenchmarkLoadValues/dbr_10-8          	    5000	    372940 ns/op	    3874 B/op	     123 allocs/op
BenchmarkLoadValues/sqlx_100-8        	    2000	    584197 ns/op	   30195 B/op	    1428 allocs/op
BenchmarkLoadValues/dbr_100-8         	    3000	    558852 ns/op	   22965 B/op	     937 allocs/op
BenchmarkLoadValues/sqlx_1000-8       	    1000	   2319101 ns/op	  289339 B/op	   14031 allocs/op
BenchmarkLoadValues/dbr_1000-8        	    1000	   2310441 ns/op	  210092 B/op	    9040 allocs/op
BenchmarkLoadValues/sqlx_10000-8      	     100	  17004716 ns/op	 3193997 B/op	  140043 allocs/op
BenchmarkLoadValues/dbr_10000-8       	     100	  16150062 ns/op	 2394698 B/op	   90051 allocs/op
BenchmarkLoadValues/sqlx_100000-8     	      10	 170068209 ns/op	31679944 B/op	 1400053 allocs/op
BenchmarkLoadValues/dbr_100000-8      	      10	 147202536 ns/op	23680625 B/op	  900061 allocs/op

Thanks & Authors

Inspiration from these excellent libraries:

  • sqlx - various useful tools and utils for interacting with database/sql.
  • Squirrel - simple fluent query builder.

Authors:

Contributors:

License

FOSSA Status