Migrations
Script di migrazione per aggiornare lo schema database.
COM_BRANDS - Audit Trail e Soft Delete
Version: 2024.01.001 Descrizione: Aggiunge campi per audit trail e soft delete alla tabella COM_BRANDS
Migration UP
sql
-- Migration: Aggiunta audit trail e soft delete a COM_BRANDS
-- Version: 2024.01.001
-- Date: 2024-01-15
-- Audit trail (creazione)
ALTER TABLE `COM_BRANDS`
ADD COLUMN `CREATED_BY` INT UNSIGNED NULL
COMMENT 'ID utente creatore' AFTER `ORDERING`,
ADD COLUMN `CREATED_AT` DATETIME DEFAULT CURRENT_TIMESTAMP
COMMENT 'Data/ora creazione' AFTER `CREATED_BY`;
-- Status per query semplificate
ALTER TABLE `COM_BRANDS`
ADD COLUMN `STATUS` TINYINT UNSIGNED NOT NULL DEFAULT 1
COMMENT '1=ACTIVE, 0=DELETED' AFTER `CREATED_AT`;
-- Soft delete tracking
ALTER TABLE `COM_BRANDS`
ADD COLUMN `DELETED_BY` INT UNSIGNED NULL
COMMENT 'ID utente eliminazione' AFTER `STATUS`,
ADD COLUMN `DELETED_AT` DATETIME NULL
COMMENT 'Data/ora eliminazione' AFTER `DELETED_BY`,
ADD COLUMN `RESTORED_BY` INT UNSIGNED NULL
COMMENT 'ID utente ripristino' AFTER `DELETED_AT`,
ADD COLUMN `RESTORED_AT` DATETIME NULL
COMMENT 'Data/ora ripristino' AFTER `RESTORED_BY`;
-- Indici per performance
ALTER TABLE `COM_BRANDS`
ADD INDEX `IDX_STATUS` (`STATUS`),
ADD INDEX `IDX_COMPANY_STATUS` (`ID_COMPANY`, `STATUS`),
ADD INDEX `IDX_DELETED_AT` (`DELETED_AT`);
-- Migrazione dati esistenti (tutti attivi)
UPDATE `COM_BRANDS` SET STATUS = 1;Migration DOWN
sql
-- Rollback: Rimozione campi audit e soft delete da COM_BRANDS
-- Version: 2024.01.001
ALTER TABLE `COM_BRANDS`
DROP INDEX `IDX_STATUS`,
DROP INDEX `IDX_COMPANY_STATUS`,
DROP INDEX `IDX_DELETED_AT`;
ALTER TABLE `COM_BRANDS`
DROP COLUMN `CREATED_BY`,
DROP COLUMN `CREATED_AT`,
DROP COLUMN `STATUS`,
DROP COLUMN `DELETED_BY`,
DROP COLUMN `DELETED_AT`,
DROP COLUMN `RESTORED_BY`,
DROP COLUMN `RESTORED_AT`;Note di Esecuzione
Attenzione
Esegui sempre le migrazioni in ambiente di test prima della produzione.
Pre-requisiti
- Backup completo del database
- Verifica spazio disco disponibile
- Pianifica finestra di manutenzione (la tabella sara bloccata durante l'ALTER)
Post-migrazione
- Verifica che tutti i record abbiano
STATUS = 1 - Aggiorna le query esistenti per filtrare su
STATUS - Testa le API con i nuovi campi
Storico Migrazioni
| Version | Data | Descrizione | Stato |
|---|---|---|---|
| 2024.01.001 | 2024-01-15 | Audit trail e soft delete COM_BRANDS | Pending |