ddl-diff
liquibase
ddl-diff | liquibase | |
---|---|---|
1 | 54 | |
2 | 4,399 | |
- | 1.1% | |
10.0 | 9.9 | |
over 6 years ago | 6 days ago | |
Scala | Java | |
GNU General Public License v3.0 only | 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.
ddl-diff
-
PRQL a simple, powerful, pipelined SQL replacement
So, after digging about in the docs, I found the Best Practices[0] page which lays out what you describe. I was disappointed to find it is just using idempotent creation statements for procedures and views and putting them all in files that are re-run on each migration step-along with each new roll forward migration-so that new versions of these logic objects replace any old ones. This is not exactly something that liquidbase provides, should be easily replicatable, and I was hoping it'd do diffs to provide similar experience on tables as well.
After some web searching, I came across a project[1] that's trying to do what I describe but it appears to be dead. I'm surprised that migration tools (that I looked through) don't already support such a basic approach that I suspect I'm missing something obvious. Some fundamental block in how SQL works or maybe it doesn't work that well in practice for, in concept, it sounds easy to script using what they call a shadow db and `pg_diff`.
[0]: https://docs.liquibase.com/concepts/bestpractices.html
[1]: https://github.com/cbowdon/ddl-diff
liquibase
-
I am looking for a troubled/bad open source codebase
While I respect the work, Liquibase's code base is quite messy... https://github.com/liquibase/liquibase
-
Any free SchemaDiff tools out there? pgAdmin Schema Diff created a script but it fails (order is wrong, etc)
Have you looked at liquibase?
-
dbForge Schema Compare vs Redgate SQL Compare vs ApexSQL Diff
For those in search of a open source solution with commercial support have a look at https://www.liquibase.org/
- How do you manage database structure changes? And deploying code?
-
Better alternatives to schemachange for Snowflake Database Object Deployment
I haven't used it for a number of years but it sounds like something like liquibase (https://www.liquibase.org/) might be what you're looking for.
-
Version control for database used by C# app
Liquibase
- Dumb Question: Initializing a database.
-
How do you handle migrations ?
We use https://github.com/liquibase/liquibase, as most of Dev are used to and comfortable with it.
-
Schema vs non-schema prpgramming
Highly recommend you use either Liquibase or Flyway for schema management, and Testcontainers pg to run a transitive database for your tests.
-
Deploying data across environments
I haven't used this so I'm not sure it does exactly what you're looking for but I had a DBA recommend it to me as a possible tool to start using as we overhaul our pipelines. https://www.liquibase.org/
What are some alternatives?
cargo-semver-checks - Scan your Rust crate for semver violations.
Prisma - Next-generation ORM for Node.js & TypeScript | PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB
prql-query - Query and transform data with PRQL
schemachange - A Database Change Management tool for Snowflake
FunSQL.jl - Julia library for compositional construction of SQL queries
FluentMigrator - Fluent migrations framework for .NET
normconf2022
dolt - Dolt – Git for Data
prql - PRQL is a modern language for transforming data — a simple, powerful, pipelined SQL replacement
bytebase - The GitLab/GitHub for database DevOps. World's most advanced database DevOps and CI/CD for Developer, DBA and Platform Engineering teams.
trustfall - A query engine for any combination of data sources. Query your files and APIs as if they were databases!
dbmate - :rocket: A lightweight, framework-agnostic database migration tool.