golang-database-library-orm-example
go-sql
Our great sponsors
golang-database-library-orm-example | go-sql | |
---|---|---|
4 | - | |
21 | 176 | |
- | 0.6% | |
0.0 | 0.0 | |
about 1 year ago | almost 2 years ago | |
Go | Go | |
- | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
golang-database-library-orm-example
-
Golang Database Library and Orm Examples
What I found is sqlx and sqlc are excellent for hand-rolled queries, but is poor for dynamic queries which a query builder library/orm might suite better. If there are many eager-loading table relationships, I found that orms tend to be much better. Of course these are entirely my personal opinion. I dove into more details on how each libraries and orms fares against those operations in the posts. It is also accompanied with reproducible repo at https://github.com/gmhafiz/golang-database-library-orm-example
-
Dynamic sql code during runtime.
I discussed approaches using different libraries and ORMs at https://www.gmhafiz.com/blog/golang-database-library-orm-example-dynamic-list/. Though I just realised the example for squirrel is missing. Check out the code examples though
-
Scanning joined SQL rows into nested go struct
I show scans for a many to many relationship between two tables. https://github.com/gmhafiz/golang-database-library-orm-example/blob/master/db/sqlc/manyToMany.go
-
What kind of things have you ran with go:generate?
I made repo that compares between different libraries and orms including sqlx, sqlc, sqlboiler, gorm, and ent https://github.com/gmhafiz/golang-database-library-orm-example
go-sql
We haven't tracked posts mentioning go-sql yet.
Tracking mentions began in Dec 2020.
What are some alternatives?
bob - SQL query builder and ORM/Factory generator for Go with support for PostgreSQL, MySQL and SQLite
GORM - The fantastic ORM library for Golang, aims to be developer friendly
optional - Optional is a library of optional Go types
REL - :gem: Modern ORM for Golang - Testable, Extendable and Crafted Into a Clean and Elegant API
ent - An entity framework for Go
go-sqlbuilder - A flexible and powerful SQL string builder library plus a zero-config ORM.
gorm-seeder - Gorm seeder package
QBS - QBS stands for Query By Struct. A Go ORM.
sqlc - Generate type-safe code from SQL
upper.io/db - Data access layer for PostgreSQL, CockroachDB, MySQL, SQLite and MongoDB with ORM-like features.
jwt-auth-api - JWT Authentication Implementation in Golang
Storm - Simple and powerful toolkit for BoltDB