What is GORM?
It is a fantastic ORM library for Golang, aims to be developer friendly. It is an ORM library for dealing with relational databases. This library is developed on top of database/sql package.
GORM is a tool in the Object Relational Mapper (ORM) category of a tech stack.
GORM is an open source tool with 489 GitHub stars and 150 GitHub forks. Here’s a link to GORM's open source repository on GitHub
Who uses GORM?
12 companies reportedly use GORM in their tech stacks, including SWORD Health, Finema, and Buzzvil.
82 developers on StackShare have stated that they use GORM.
- Full-Featured ORM
- Associations (has one, has many, belongs to, many to many, polymorphism, single-table inheritance)
- Hooks (before/after create/save/update/delete/find)
- Eager loading with Preload, Joins
- Transactions, Nested Transactions, Save Point, RollbackTo to Saved Point
- Context, Prepared Statment Mode, DryRun Mode
- Batch Insert, FindInBatches, Find/Create with Map, CRUD with SQL Expr and Context Valuer
- SQL Builder, Upsert, Locking, Optimizer/Index/Comment Hints, Named Argument, SubQuery
- Composite Primary Key, Indexes, Constraints
- Auto Migrations
- Extendable, flexible plugin API
GORM Alternatives & Comparisons
What are some alternatives to GORM?
See all alternatives
It is a RESTful HTTP framework for the rapid development of Go applications including APIs, web apps and backend services with integrated Go specific features such as interfaces and struct embedding.
Hibernate is a suite of open source projects around domain models. The flagship project is Hibernate ORM, the Object Relational Mapper.
SQLAlchemy is the Python SQL toolkit and Object Relational Mapper that gives application developers the full power and flexibility of SQL.
It is an object-relational mapper that enables .NET developers to work with relational data using domain-specific objects. It eliminates the need for most of the data-access code that developers usually need to write.
Sequelize is a promise-based ORM for Node.js and io.js. It supports the dialects PostgreSQL, MySQL, MariaDB, SQLite and MSSQL and features solid transaction support, relations, read replication and more.