2.4 Eliminazione di un operatore dall' interrogazione Il comando di ELIMINAZIONE operatore dá all' utente la possibilitá di rimediare ad eventuali errori o semplicemente apportare delle modifiche alla interrogazione esistente. Ogni volta che viene eliminato un operatore, successivamente all' aggiornamento dell' albero, viene ricalcolata l' interrogazione rappresentata dall' intero albero, cosí da avere in tempo reale tutta la situazione aggiornata e quindi avere una risposta immediata delle interrogazioni parziali relative ad ogni singolo operatore. Segue un' analisi dei diversi casi possibili che si possono verificare durante l' eliminazione di un operando: Eliminazione dell' operatore radice, UNARIO o BINARIO, privo di operandi Figura 2.4.1 Se si procede con l' eliminazione dell' operatore, cliccando il tasto ELIMINA operatore , si ottiene l' annullamento dell' albero, ovvero viene ripristinato un albero vuoto, con una radice fittizia Figura 2.4.2 Eliminazione dell' operatore radice, UNARIO o BINARIO, con figli Eliminando l' operatore radice, evidenziato in giallo, si esegue un algoritmo che individua il tipo di operatore selezionato, ovvero se é un operatore UNARIO (Figura 2.4.3) o BINARIO (Figura 2.4.4). Figura 2.4.3 Figura 2.4.4 Se l' operatore selezionato é di tipo UNARIO (Figura 2.4.3), l' operando sottostante diviene la nuova radice dell' albero della query (Figura 2.4.5) Figura 2.4.5 Se l' operatore selezionato é di tipo BINARIO (Figura 2.4.4), viene chiesto all' utente di scegliere quale dei due operandi sottostanti si vuole mantenere e quale perdere. Infatti non é possibile mantenere entrambi gli operandi Figura 2.4.6 La figura 2.4.6 evidenzia il caso in cui si é scelto di mantenere l' operando sinistro. Eliminazione di un operatore foglia L' eliminazione di un operatore foglia, sia UNARIO che BINARIO, comporta la sola eliminazione dello stesso (Figura 2.4.1 e Figura 2.4.2) Eliminazione dell' operatore intermedio UNARIO con un operando La situazione é quella presentata nella Figura 2.4.7 di seguito Figura 2.4.7 Dopo l' eliminazione di tale operatore, il suo operando sottostante diviene il nuovo operando dell' operatore sovrastante Figura 2.4.8 Eliminazione di un operatore intermedio BINARIO con 1 o 2 operandi Figura 2.4.9 L' eliminazione dell' operatore selezionato (evidenziato in giallo), in una situazione come quella descritta in Figura 2.4.9, é gestita da un algoritmo che funziona nel seguente modo: Si chiede all' utente di scegliere quale dei due operandi, dell' operatore binario che si vuole eliminare, deve essere mantenuto e quindi agganciato all' operatore genitore di quello selezionato. Se si sceglie di mantenere l' operando sinistro, si otterrá la seguente situazione: Figura 2.4.10 Se invece si é scelto di agganciare al genitore, l' operando destro dell' operatore da eliminare, il risultato sará il seguente: Figura 2.4.11 Torna all'indice della Guida
Sviluppato da Daniele Cesario e Daniele Di Bartolomei | VisualRA 1.0