CLI e biblioteca Go para gerenciar alterações no schema do banco de dados com arquivos SQL versionados ou funções Go.
go-gorm/gorm
ORM completo para Go que mapeia structs para tabelas de banco de dados e oferece suporte a associações, hooks, transações e migrações.
- Estrelas
- 39,978
- Forks
- 4,220
- Issues abertas
- 554
- Último commit
- mês passado
O que é?
GORM é uma biblioteca de mapeamento objeto-relacional para Go. Ela permite definir modelos como structs de Go e executar operações de criação, leitura, atualização e exclusão sem escrever SQL puro para cada consulta, além de oferecer um construtor de SQL e suporte a SQL puro quando necessário.
A biblioteca abrange padrões relacionais comuns: has one, has many, belongs to, many to many, associações polimórficas e herança de tabela única, com carregamento antecipado por meio de Preload e Joins. Também oferece transações com save points, inserções em lote, upserts, bloqueio de linhas, hooks para operações de criação, atualização, exclusão e busca, além de migrações automáticas de schema.
GORM é extensível por meio de uma API de plugins. Entre os plugins documentados estão um resolver de banco de dados para múltiplos bancos e divisão de leitura/escrita, além de uma integração com Prometheus. A documentação e os guias estão disponíveis em gorm.io.
Recursos principais
- 01Associações, incluindo has one, has many, belongs to, many to many e associações polimórficas.
- 02Carregamento antecipado via Preload e Joins.
- 03Transações com transações aninhadas e save points.
- 04Inserção em lote, upsert, bloqueio de linhas e FindInBatches.
- 05Hooks para create, save, update, delete e find.
- 06Migrações automáticas e uma API de plugins.
Casos de uso
- Desenvolver um serviço web em Go com um banco de dados relacional sem escrever SQL manualmente para cada consulta.
- Adicionar divisão de leitura/escrita ou conexões com múltiplos bancos de dados por meio do plugin resolver.
- Gerenciar alterações de schema durante o desenvolvimento com migrações automáticas.
Início rápido
- 1
Consulte os guias em gorm.io para saber como instalar e usar
Tópicos
Perguntas frequentes
- O que é gorm?
- ORM completo para Go que mapeia structs para tabelas de banco de dados e oferece suporte a associações, hooks, transações e migrações. GORM é uma biblioteca de mapeamento objeto-relacional para Go. Ela permite definir modelos como structs de Go e executar operações de criação, leitura, atualização e exclusão sem escrever SQL puro para cada consulta, além de oferecer um construtor de SQL e suporte a SQL puro quando necessário.
- gorm é gratuito? Qual é a licença?
- gorm é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- gorm ainda é mantido?
- Atualizado nos últimos 6 meses. O último commit de gorm foi em 14 de set. de 2026.
- Para que posso usar gorm?
- Desenvolver um serviço web em Go com um banco de dados relacional sem escrever SQL manualmente para cada consulta. Adicionar divisão de leitura/escrita ou conexões com múltiplos bancos de dados por meio do plugin resolver. Gerenciar alterações de schema durante o desenvolvimento com migrações automáticas.
- Como instalar gorm?
- Consulte os guias em gorm.io para saber como instalar e usar
- Onde consigo gorm?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/go-gorm/gorm
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
ORM para Node.js e TypeScript que oferece acesso type-safe a bancos de dados como PostgreSQL, MySQL, SQLite e MongoDB.
Cliente SQL desktop gratuito e multiplataforma, com ferramentas para bancos de dados e suporte a mais de 100 bancos via drivers JDBC e ODBC.
ORM para TypeScript e JavaScript no Node.js e em outras plataformas JS, compatível com os padrões Active Record e Data Mapper e diversos bancos SQL e NoSQL.
ORM baseado em promises para Node.js e TypeScript, compatível com PostgreSQL, MySQL, MariaDB, SQLite, MS SQL Server, Snowflake, Oracle e Db2.
A linguagem de programação Go, open source e criada para desenvolver software simples, confiável e eficiente.