È possibile utilizzare SQL per creare regole di convalida personalizzate e più complesse.
Nella rete di esempio in questione, non è consentito collegare direttamente un oggetto stazione di pompaggio ad un altro oggetto stazione di pompaggio. Questa serie di query SQL utilizza il campo definito dall'utente user_number_2 per contare le connessioni alle stazioni di pompaggio. Alla fine, verrà selezionata qualsiasi stazione di pompaggio collegata direttamente ad un'altra stazione di pompaggio.
| Passo | Descrizione del passo | Query | Immagine di esempio |
|---|---|---|---|
|
A |
Per prima cosa il valore del campo utente in tutti i nodi viene impostato su zero. Importante: Prima di eseguire questa operazione, assicurarsi che il campo utilizzato non contenga informazioni utili.
|
SQL query context:
SET user_number_2 = 0 |
|
|
B |
Ora vengono conteggiati tutti i collegamenti agli oggetti stazione di pompaggio incrementando il numero nel campo del numero utente per ciascun collegamento. Notare che il campo Tipo di oggetto per questa query è impostato su Stazione di pompaggio.
|
SQL query context:
SET us_node.user_number_2 = us_node.user_number_2 + 1; SET ds_node.user_number_2 = ds_node.user_number_2 + 1 |
|
|
C |
Quindi, individuare tutte le stazioni di pompaggio collegate ad altre stazioni di pompaggio. Queste saranno ora selezionate. |
SQL query context:
us_node.user_number_2 > 1 OR ds_node.user_number_2 > 1 |
|
|
D |
Infine, eliminare il conteggio dai campi Numero utente 2, poiché non è più necessario. |
SQL query context:
SET user_number_2 = NULL |
|
|
E |
Le query SQL che costituiscono questo processo di convalida possono essere inserite in un gruppo di query memorizzate. È quindi possibile eseguire tutte le query del gruppo sulla propria rete trascinando l'oggetto Cartella query sulla Planimetria. Le query vengono eseguite in ordine alfabetico, pertanto è sufficiente fare attenzione alla loro denominazione. |
|
|