
Replace GORM's auto-migration with Goose. The latter uses hand-written SQL queries to apply database schema changes, which is safer and easier to understand than what GORM is doing.
655 B
655 B
SQL Migrations
The files here are run by Goose, the database migration tool.
These are embedded into the Flamenco Manager executable, and automatically run on startup.
Foreign Key Constraints
Foreign Key constraints (FKCs) are optional in SQLite, and always enabled by
Flamenco Manager. These are temporarily disabled during database migration
itself. This means you can replace a table like this, without ON DELETE
effects running.
INSERT INTO `temp_table` SELECT * FROM `actual_table`;
DROP TABLE `actual_table`;
ALTER TABLE `temp_table` RENAME TO `actual_table`;