sqlc
atlas
Our great sponsors
sqlc | atlas | |
---|---|---|
169 | 67 | |
10,837 | 4,945 | |
5.6% | 6.4% | |
9.7 | 9.8 | |
6 days ago | 5 days ago | |
Go | Go | |
MIT License | Apache License 2.0 |
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.
sqlc
-
Give Up Sooner
"Is there a way to get sqlc to use pointers for nullable columns instead of the sql.Null types?"
-
Show HN: Sqlbind a Python library to compose raw SQL
I came across this yesterday for golang: https://sqlc.dev which is somewhat like what you want, maybe.
Not sure it allows you to parameterize table names but the basic idea is codegen from sql queries so you are working with go code (autocompletion etc).
- API completa em Golang - Parte 7
-
ORMs are nice but they are the wrong abstraction
Agreed, but tools like https://sqlc.dev, which I mention in the article, are a good trade-off that allows you to have verified, testable, SQL in your code.
- API completa em Golang - Parte 6
-
Go ORMs Compared
sqlc is not strictly a conventional ORM. It offers a unique approach by generating Go code from SQL queries. This allows developers to write SQL, which sqlc then converts into type-safe Go code, reducing the boilerplate significantly. It ensures that your queries are syntactically correct and type-safe. sqlc is ideal for those who prefer writing SQL and are looking for an efficient way to integrate it into a Go application.
-
Type-safe Data Access in Go using Prisma and sqlc
I was browsing awesome-go for ideas on how to setup my data access layer when I stumbled on sqlc. It seemed like a great option. Code generation is a strategy often used in the Go ecosystem and making my queries safe at compile time was an idea I really liked. Knex was great, but it required of me that I test thoroughly my queries at runtime and that I sanitize my query results to ensure type safety within my application.
-
Level UP your RDBMS Productivity in GO
Now, we are going to generate the code. For this purpose, we are going to use sqlc.
-
What 3rd-party libraries do you use often/all the time?
https://github.com/sqlc-dev/sqlc — for use with //go:generate
- API completa em Golang - Parte 1
atlas
-
Pgroll: zero-downtime, undoable, schema migrations for Postgres
Check out: https://github.com/ariga/atlas
(I'm one of the authors of this project).
-
Show HN: Postgres Language Server
fwiw, I personally am interested in this approach too[0]. I keep running into roadblocks around the ordering of events and some of the hairy issues around "destructive" actions (eg: renaming columns). i think we can get there, especially once we make progress with this LSP.
There are other notable mentions in this space:
Reshape: https://fabianlindfors.se/blog/schema-migrations-in-postgres...
Atlas: https://atlasgo.io/
[0] https://github.com/kiwicopple/declarative-schemas
-
Database migration tool
Atlas: https://github.com/ariga/atlas. It can be integrated with any ORM, but also has an official one for GORM: https://atlasgo.io/guides/orms/gorm
-
Queryx: An Open-Source Go ORM with Automatic Schema Management
Run the queryx db:create command to create a PostgreSQL database, and then run queryx db:migrate to automatically create the database migration files and database structure. Queryx’s database schema management is built upon Atlas.
-
Tool for generating automatic migrations/schema diff
One of https://atlasgo.io's creators here.
-
Prisma like PGX Auto migration library
In this case, I'd recommend you to check Atlas: https://github.com/ariga/atlas
-
Quickly visualize your Django schemas with DjangoViz
My name is Rotem, I'm one of the creators of Atlas (https://atlasgo.io) a modern open-source schema management tool. Recently one of our engineers created a cool Django plugin that creates beautiful (in my eyes at least ;-)) and shareable ERDs from your Django data models.
-
Is there a similar tool or alternative in Go like strong_migrations?
Yes, there is: Atlas! https://atlasgo.io / https://github.com/ariga/atlas.
-
How to run DB migrations in CICD
Hi there You should take a look at Atlas - https://atlasgo.io which can help your team in many aspects of CI/ CD for databases : * CI - detect (and prevent) risky / incorrect migrations automatically * CD - support for modern deployment infrastructure (terraform, helm, etc)
-
How do you handle migrations ?
You might want to check out Atlas. It provides automatic migration planning for GORM, and has various guides on how deploying schema migration on the popular platform and tools, such as Helm, Kubernetes and ECS.
What are some alternatives?
sqlx - general purpose extensions to golang's database/sql
datahub - The Metadata Platform for your Data Stack
GORM - The fantastic ORM library for Golang, aims to be developer friendly
migrate - Database migrations. CLI and Golang library.
SQLBoiler - Generate a Go ORM tailored to your database schema.
InfluxDB - Scalable datastore for metrics, events, and real-time analytics
ent - An entity framework for Go
skeema - Declarative pure-SQL schema management for MySQL and MariaDB
jet - Type safe SQL builder with code generation and automatic query result data mapping
pogreb - Embedded key-value store for read-heavy workloads written in Go
pgx - PostgreSQL driver and toolkit for Go
goose - A database migration tool. Supports SQL migrations and Go functions.