diff --git a/src/main/resources/db/migration/V10__Fix_ModulesDisponibles_Version_Column_Type.sql b/src/main/resources/db/migration/V10__Fix_ModulesDisponibles_Version_Column_Type.sql new file mode 100644 index 0000000..d0309d2 --- /dev/null +++ b/src/main/resources/db/migration/V10__Fix_ModulesDisponibles_Version_Column_Type.sql @@ -0,0 +1,19 @@ +-- V10 : Correction type colonne version dans modules_disponibles +-- La colonne version était VARCHAR(20) (version produit comme "1.0.0") +-- mais BaseEntity attend BIGINT (@Version Hibernate pour optimistic locking) +-- L'entité ModuleDisponible n'a pas de champ version propre → la colonne VARCHAR était orpheline +-- Correction : supprimer l'ancienne VARCHAR, ajouter BIGINT version=0 + +DO $$ +BEGIN + -- Supprimer version VARCHAR si elle existe encore + IF EXISTS ( + SELECT 1 FROM information_schema.columns + WHERE table_name = 'modules_disponibles' + AND column_name = 'version' + AND data_type = 'character varying' + ) THEN + ALTER TABLE modules_disponibles DROP COLUMN version; + ALTER TABLE modules_disponibles ADD COLUMN version BIGINT NOT NULL DEFAULT 0; + END IF; +END $$;