Creare un database da XML
Strumenti → Crea database da XML prende un documento XML, ricava la struttura relazionale nascosta al suo interno e ne costruisce un database — tabelle, colonne, tipi, relazioni e dati.
Serve per il caso in cui un sistema ti consegna una grande esportazione XML — un catalogo prodotti, un dataset medico o farmaceutico, l'export di un partner — e tu la vuoi come database vero, non come file.
I tre passi
1. Impostazione
- File XML — scegli il documento.
- Connessione di destinazione — dove verrà creato il database.
- Database di destinazione — il nome del database. Per SQLite è il file di database della connessione.
2. Anteprima
NabuSQL analizza il documento e mostra ciò che ha trovato: le tabelle che creerà, le loro colonne e i tipi dedotti. Il DDL generato può essere ispezionato prima che parta qualcosa.
Leggi bene questo passo. È qui che scopri che un campo che credevi numerico è stato dedotto come testo perché un record su cinquantamila contiene un carattere estraneo.
3. Esecuzione
L'importazione procede con avanzamento per tabella. Alla fine ottieni un esito per tabella: righe caricate ed eventuali errori.
Come funziona
Due aspetti dell'implementazione hanno conseguenze pratiche:
- Analisi in streaming a due passaggi. Il primo passaggio determina la struttura, il secondo carica i dati. Il documento non viene mai tenuto interamente in memoria, quindi la dimensione del file è limitata dal disco e non dalla RAM.
- Le chiavi esterne vengono applicate dopo il caricamento. I record sono spesso ordinati in modo che un figlio arrivi prima del padre; creare i vincoli all'inizio rifiuterebbe righe perfettamente valide. I vincoli vengono aggiunti alla fine, quando ogni riga è al suo posto.
Dopo
- Controlla i tipi dedotti in Tabelle e colonne e restringi ciò che è risultato più ampio del necessario.
- Apri il diagramma ER per vedere la struttura ricavata.
- Aggiungi indici per le colonne che interrogherai davvero — l'importazione crea chiavi e vincoli, non gli indici che servono ai tuoi report.
Se una tabella viene male
La struttura segue il documento. Gli elementi ripetuti diventano tabelle, attributi ed elementi figli diventano colonne. Quando un elemento è incoerente tra i record, l'analisi allarga il tipo per accogliere ogni valore incontrato. Correggere dopo il caricamento — un ALTER TABLE su dati già noti — è di solito più rapido che rimodellare l'XML.
