GORM
The fantastic ORM library for Golang, aims to be developer friendly (by go-gorm)
SQLBoiler
Generate a Go ORM tailored to your database schema. (by volatiletech)
GORM | SQLBoiler | |
---|---|---|
83 | 43 | |
38,164 | 6,859 | |
0.8% | 0.4% | |
7.5 | 6.9 | |
8 days ago | 9 days ago | |
Go | Go | |
MIT License | BSD 3-clause "New" or "Revised" 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.
GORM
Posts with mentions or reviews of GORM.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2025-01-03.
- 🏷️ Sintaxe Alternativa em Go: Uma Leve Introdução às Struct Field Tags
-
Top 5 Go Libraries Every Backend Developer Should Know
2. GORM
-
How to use migrations with Golang
Go doesn't support migrations natively for that propuso we can use the popular golang-migrate package also if you use an ORM like GORM you can use it for that.
-
Toasty, an Async ORM for Rust
I never understood why people are so stubborn about hating on orm.
For example I'm familiar with https://gorm.io and it does save me a lot of time and useless boilerplate.
And guess what, if I ever need to make a complex query, I also happen to know SQL, and I'm just going to make a "raw" query https://gorm.io/docs/sql_builder.html#Raw-SQL and be done with it.
It's not all that hard.
-
Building a RESTful API with Go Fiber: An Express-Inspired Boilerplate
SQL database: PostgreSQL Object Relation Mapping using Gorm
-
Store IoT device data
The previous post demonstrated receiving the raw data and unmarshalling it into a struct that was already annotated with gorm tags. Gorm is a popular ORM for Go. If you are not familiar with it, you can for more information here.
-
GORM, PostgreSQL & Atlas
GORM is a, quite conveniently named, ORM for GO
-
Scaling Backend to 1M requests with just 2GB ram ⚡️
Written in GIN framework and uses GORM as ORM.
-
How to handle migrations in Golang
There are ORMs like gorm that supports some kind of documentation with files, but they mainly focus on converting the database to "things" in the code to be used by the ORM, and not as documentation only/documentation-first.
-
Go ORMs Compared
GORM is a comprehensive ORM tool in Go, offering a code-first approach which allows defining database schemas using struct tags in Go. It's known for its developer-friendly nature, making it suitable for both beginners and experienced users. GORM supports a variety of SQL databases like MySQL, PostgreSQL, and SQLite. It's designed to be flexible, allowing developers to drop down to raw SQL when necessary. However, it's important to be cautious about its performance implications in large-scale applications.
SQLBoiler
Posts with mentions or reviews of SQLBoiler.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2024-05-28.
-
Eradicating N+1s: The Two-Phase Data Load and Render Pattern in Go
If you're using Go, sqlboiler can do this for you in most common cases (e.g., fetch all the Users matching this filter, and for each User, fetch the related Company)
https://github.com/volatiletech/sqlboiler
-
Go ORMs Compared
SQLBoiler takes a database-first approach, generating Go code from your database schema. This means it creates highly optimized and custom-tailored code for your specific database schema. SQLBoiler is great for applications where the database schema is well-defined and changes infrequently. However, like sqlc, it requires regenerating the code when the database schema changes. It's well-suited for projects where performance is a key concern and the database design is stable.
-
Comparing database/sql, GORM, sqlx, and sqlc
Moved all my projects to https://github.com/volatiletech/sqlboiler.
-
Are there any decent ORMs in Golang?
sqlboiler
-
Any mid sized / big open source code base in golang that makes use of SQL DBs?
My current ORM of choice is Bob [GitHub Link] which I created based on my experience using and maintaining SQLBoiler [GitHub Link].
-
GORM
You mean like ORMs? * sqlboiler: generates Go ORM using database schema.
-
ORM or no ORM (and which ones)?
SQL code generator (aka inspect a database or SQL files to generate data models). You have the option of using something like volatiletech/sqlboiler which looks at the a physical database and generates code based on the schema. Or SQLC which is an amazing and fast project.
-
Using Prisma Migrate with a Dockerized Postgres
After trying a half dozen migration engines for NodeJS, I was pleased to see Prisma and its excellent documentation. As a golang developer I am partial to SQLBoiler and its database-first approach, though perhaps this is a condition of our community where we want all the knobs. Prisma was code-first but still gave me enough control to feel confident.
-
Can anyone help me on how you are using golang with databases in production systems?
I use sqlboiler which generates an ORM from your database, and sql-migrate which is a tool for managing SQL migrations. Although you have to write your migrations in SQL, which IMHO is a plus.
- volatiletech/sqlboiler: Generate a Go ORM tailored to your database schema.
What are some alternatives?
When comparing GORM and SQLBoiler you can also consider the following projects:
pgx - PostgreSQL driver and toolkit for Go
ent - An entity framework for Go
bun - SQL-first Golang ORM
sqlc - Generate type-safe code from SQL
go-pg - Golang ORM with focus on PostgreSQL features and performance