GORM VS SQLBoiler

Compare GORM vs SQLBoiler and see what are their differences.

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)
Our great sponsors
  • Nanos - Run Linux Software Faster and Safer than Linux with Unikernels
  • Scout APM - A developer's best friend. Try free for 14-days
  • SaaSHub - Software Alternatives and Reviews
GORM SQLBoiler
20 11
25,575 4,343
2.3% 3.2%
9.2 7.7
6 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.

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 2021-09-30.
  • Migrating from PHP to Go
    reddit.com/r/golang | 2021-09-30
    Do you like an ORM like eloquent for Laravel? Then I can recommend GORM https://gorm.io/
    reddit.com/r/golang | 2021-09-30
    Good ORM library: https://gorm.io/
  • 5chan - The 4chan clone
    dev.to | 2021-09-18
    GORM
  • How We Went All In on sqlc/pgx for Postgres + Go
    reddit.com/r/golang | 2021-09-09
    Well, if you look at Gorm's prepare_stmt.go you see that it is a thin wrapper around a database/sql.Stmt. And if you look at database/sql.Stmt you see that it's a sort of handle to an abstract entity that it creates in the database.
  • Go, Kafka and gRPC clean architecture CQRS microservices with Jaeger tracing 👋🧑‍💻
    dev.to | 2021-08-29
    Writer service consumes kafka topics, process messages writing to postgres and publishes successfully processed messages to kafka. For working with postgres in Go in my opinion the best choose is pgx, but if you need query builder very good library is squirrel, personally don't like orm's, but usually as have seen, teams often uses gorm, it's up to you. ProcessMessages method listening kafka topics and call specific method depends on topic:
  • What Knowledge Golang Back End Developer Should Have?
    reddit.com/r/golang | 2021-08-24
    gorm's performance I believe is fairly impressive at this point. While it was bad at first, they put a lot of effort in the v2 release to make it great. Check out: https://github.com/go-gorm/gorm/issues/3055
  • Read table from database without knowng its field in golang
    reddit.com/r/golang | 2021-08-08
    Sure. You can do this, but I would honestly recommend to only do this in test code, if at all. Otherwise, you should aim to keep types and by that the according API to interact with your DB schema static and consistent. An easy way to do this would be to use an object relational mapper (ORM) library like gorm.
  • What is the best solution to unique data in golang
    reddit.com/r/golang | 2021-08-05
    Once in sqlite you can use something like https://gorm.io/ (or use a golang sqlite package like: github.com/mattn/go-sqlite3) to work with the data.
  • Database for Go projects?
    reddit.com/r/golang | 2021-06-20
    If you and your team currently don't have any specific requirements, I'd advice to choose an abstraction library that have supports for most common dbs (eg. gorm or bun) and start with whatever db you are more used to.
  • Which is the best go web framework for creating a rest api 's backend ?
    reddit.com/r/golang | 2021-06-19
    DB abstractions: - gorm - go-pg - bun - sqlx

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 2021-09-08.
  • We Went All in on Sqlc/Pgx for Postgres and Go
    news.ycombinator.com | 2021-09-08
    It seems you forgot sqlboiler [1] which is something like "write SQL schema, parse SQL schema, generate Go structs and functions to query the schema". Not quite like generating activerecords, I think.

    [1]: https://github.com/volatiletech/sqlboiler

    news.ycombinator.com | 2021-09-08
    I was expecting the article to contain a note about SQLBoiler (https://github.com/volatiletech/sqlboiler) and why they didn't use it, but there is no. So I was expecting SQLBoiler to be heavily mentioned in the comments, but it's not the case.

    I you want to see a (slightly heated) debate about `sqlc` versus SQLBoiler with their respective creators: https://www.reddit.com/r/golang/comments/e9bvrt/sqlc_compile...

    Note that SQLBoiler does not seem to be compatible with `pgx`.

  • JOOQ library equivalent for Go?
    reddit.com/r/golang | 2021-07-28
    You might want to have a look into SQLBoiler. https://github.com/volatiletech/sqlboiler
  • Has anybody moved from Django (python) to any of the Go backend frameworks?
    reddit.com/r/golang | 2021-06-10
    Consider SQL Boiler because it can integrate directly with an existing database.
  • Go to Postgres Library
    reddit.com/r/golang | 2021-05-28
    Depending on your preferences, sqlboiler uses the DB as source of truth for generating structs and has nice querying features
  • After 2 years of Django, I'm starting using Go for building web servers. Do you guys have any suggestions?
    reddit.com/r/golang | 2021-05-24
    DB Management: https://github.com/volatiletech/sqlboiler -- this follows a data first model, aka your database schema will create go code, not the django way where Py code updates the DB. https://github.com/amacneil/dbmate -- I use it to manage my DB schema.
  • Building Microservices in Go: Accessing PostgreSQL - ORM/ORM-like
    dev.to | 2021-03-23
    volatiletech/sqlboiler is another ORM available for Go, it's database-first instead of code-first like gorm, what this means in practice is that sqlboiler generates type-safe Go code to act as an ORM, to date it supports postgres, mysql, sqlserver, sqlite and cockroach db.
  • what's the advantage of golang instead of java or C# in industry?
    reddit.com/r/golang | 2021-03-18
    If you complain about Golang's ORM, the best way is to generate code based on Database Schema, Go doesn't have meta programming as in Ruby or bytecode generation as in Java. You can use library like sqlboiler or generate your own.
  • ORM FOR GO
    reddit.com/r/golang | 2021-03-17
    https://github.com/volatiletech/sqlboiler is my personal favorite
  • What is the best way to use PostgreSQL with Go?
    reddit.com/r/golang | 2021-02-08

What are some alternatives?

When comparing GORM and SQLBoiler you can also consider the following projects:

ent - An entity framework for Go

Xorm

go-pg - Golang ORM with focus on PostgreSQL features and performance

beego orm

gorp - Go Relational Persistence - an ORM-ish library for Go

xorm - xorm是一个简单而强大的Go语言ORM库,通过它可以使数据库操作非常简便。本库是基于原版xorm的定制增强版本,为xorm提供类似ibatis的配置文件及动态SQL支持,支持AcitveRecord操作

upper.io/db - Data access layer for PostgreSQL, CockroachDB, MySQL, SQLite and MongoDB with ORM-like features.

pop/soda - A Tasty Treat For All Your Database Needs

REL - :gem: Database Access Layer for Golang - Testable, Extendable and Crafted Into a Clean and Elegant API

sqlc - Generate type safe Go from SQL