Subject: Database migrations

From: Simon Connah <[email-masked]>
Date: Fri, 28 Jun 2024 10:26:09 +0000

Hi,

I'm building a web app using the Python web framework Flask and I'm curious how I should handle database changes. At the moment I can just delete everything and load the SQL files but when I launch into production obviously I won't be able to do that. Currently all my database stuff is stored in a SQL file. One file for each table and includes stored procedures and function definitions.

I know there are libraries like Alembic but that seems to be for SQLAlchemy and not raw SQL and Flyway seems to require an expensive license to allow migration rollback so I'm wondering if anyone can offer some advice?

If you need more information then please let me know.

Simon.