Skip to main content
SQLOZ
Chapter 6 Schema & Model Architecture

Capitolo 6: Confronto e Sincronizzazione Schemi

Info: Questo capitolo illustra l’individuazione di discrepanze strutturali (Schema Drift) tra due database, la matrice visuale di differenze e le salvaguardie di backup automatico.

In questo capitolo:

6.1 Rilevamento delle Differenze di Schema

Nel corso dello sviluppo, i database di test e di produzione tendono a divergere progressivamente (Schema Drift). SQLOZ confronta le istanze per garantire un allineamento controllato:

  1. Aprite dal menu Strumenti → Confronta Schemi….
  2. Origine (Source): Il database di riferimento (es. local_dev).
  3. Destinazione (Target): Il database da aggiornare (es. production_db).
  4. Cliccate su Confronta.

6.2 Matrice Visuale delle Differenze

Le difformità vengono classificate mediante una matrice a colori:

  • 🟢 Verde: Elemento presente nell’origine ma mancante nella destinazione (CREATE TABLE, ADD COLUMN).
  • 🟡 Giallo: Elemento presente in entrambi ma con tipo o indice differente (ALTER TABLE).
  • 🔴 Rosso: Elemento eliminato nell’origine ma ancora presente nella destinazione (DROP).

6.3 Meccanismi di Sicurezza e Backup

Prima di premere Applica Sincronizzazione, SQLOZ attiva controlli rigorosi:

  1. Backup automatico della tabella (_sqloz_bak_...): Per MySQL/MariaDB, prima di eseguire DDL distruttivi (DROP TABLE, DROP COLUMN, MODIFY COLUMN), i dati della tabella bersaglio vengono duplicati in una tabella con timestamp:
    CREATE TABLE IF NOT EXISTS `_sqloz_bak_<timestamp>_users` AS SELECT * FROM `users`;
  2. Script di rollback e ripristino: Quando il backup viene completato, SQLOZ genera lo script per annullare le modifiche e le query per reintegrare i dati salvati.
  3. Protezione da cancellazioni distruttive: Qualsiasi eliminazione definitiva di tabelle o colonne in produzione richiede una conferma esplicita dell’utente.

Avvertenza: Su PostgreSQL e SQLite non vengono generate tabelle di backup automatiche. Effettuate sempre un dump preventivo prima di sincronizzare strutture su questi motori.

Confronto schemi - matrice di differenze

Temi correlati