go-pg
Golang ORM with focus on PostgreSQL features and performance (by go-pg)
bun
SQL-first Golang ORM (by uptrace)
Our great sponsors
go-pg | bun | |
---|---|---|
9 | 18 | |
5,582 | 3,128 | |
0.8% | 9.9% | |
6.4 | 7.9 | |
8 days ago | 19 days ago | |
Go | Go | |
BSD 2-clause "Simplified" License | BSD 2-clause "Simplified" License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.
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.
go-pg
Posts with mentions or reviews of go-pg.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-02-12.
-
Dockerized RESTful API Application in Go: CRUD,ORM,Logs,Migrations,Validations
Might have been this one but I can't be sure https://github.com/go-pg/pg
-
What SQL library are you using?
I usually work with PostgreSQL and have used https://github.com/go-pg/pg. https://github.com/uptrace/bun is its successor.
- Why all the hate?
-
Clean Transactions in Golang Hexagon
And it is go-pg. I personally really like it as a query builder (rather than an ORM) and it has good performance. It has one feature which I'll tell you about next, without which I would have struggled to implement what I had in mind. But this feature is available in other libraries too, so don't rush to rewrite your code.
-
SQL Query Strategy for complex structs
bun and go-pg both seem to work fairly well for these kind of purposes.
- Go for Backend development
-
Connecting with database
For database communication we will use go-pg module. You can install it by running go get github.com/go-pg/pg/v10. This will install version 10 of go-pg module, which is latest version at the time of writing this guide. Now create new directory internal/database/ and file database.go inside of it.
-
How much do you agree completely switching from Java to Go? I have total 9yrs of experience in Java but now I am interested in Go.
gorm.io/gorm`, or `github.com/go-pg/pg` if you need something more feature-rich. I would avoid using `go-kit` and `go-micro` "frameworks" unless you have some special requirement for it. But you can take a look to have an idea of what Go "framework" may look like.
-
A Proposal for Adding Generics to Go
This one is mostly excellent: https://github.com/go-pg/pg
bun
Posts with mentions or reviews of bun.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-01-17.
-
ORM or no ORM (and which ones)?
This way: https://github.com/uptrace/bun, I prefer in all cases with PostgreSQL
- When creating an API (or even a website) what's the best practice of initializing a database connection and using it across the application where it's necessary?
-
Best packages?
https://github.com/uptrace/bun For SQL building.
-
Which ORM framework are you using with golang, and why?
I use Bun by Uptrace - https://github.com/uptrace/bun
-
What’s your preferred setup to work with SQL DB (without ORM) ?
Though, i've would give a try to bun
-
What SQL library are you using?
Bun would be my choice, it spans a nice gap between full ORM and query builder - https://github.com/uptrace/bun
- Bun – SQL-first Golang ORM for PostgreSQL, MySQL, mssql, and SQLite
-
Bun: SQL-first Golang ORM
To get started, see the documentation and run examples.
-
SQL Query Strategy for complex structs
bun and go-pg both seem to work fairly well for these kind of purposes.
- Bun v1.1 SQL client adds supports for MSSQL
What are some alternatives?
When comparing go-pg and bun you can also consider the following projects:
GORM - The fantastic ORM library for Golang, aims to be developer friendly
bun - Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one
ent - An entity framework for Go
sqlc - Generate type-safe code from SQL
SQLBoiler - Generate a Go ORM tailored to your database schema.
prisma-client-go - Prisma Client Go is an auto-generated and fully type-safe database client
sqlx - general purpose extensions to golang's database/sql
Squirrel - Fluent SQL generation for golang
gorp - Go Relational Persistence - an ORM-ish library for Go
go-sqlite - Low-level Go interface to SQLite 3