versione 1.04, giugno 2026
|
|
Michele Liberi mail: mliberi@gmail.com cell: +393485211456 telegram: @MicheleLiberi |
Il comando woha può essere usato anche da linea di comando per eseguire operazioni batch su un database.
Si tratta dello stesso eseguibile documentato nel capitolo Applicazioni web che può essere usato anche da linea di comando.
La modalità batch si attiva automaticamente se non è presente la variabile d'ambiente REQUEST_METHOD, oppure può essere forzata con l'opzione -b.
Un'altra opzione molto importante in questo contesto è -M, che serve per disabilitare l'esecuzione dei metodi. In alcuni casi infatti, ad esempio per caricamenti massivi di dati, è meglio non far scattare i metodi automatici che rallenterebbero il processo.
In modalità batch il woha ha queste funzioni:
La selezione degli oggetti da estrarre avviene indicando uno o più filtri, che vengono applicati in AND logico, oppure indicando esplicitamente una lista di rowid (identificatore unico per un oggetto nel DB).
L'ordine con cui vengono estratti gli oggetti dipende dall'indicazione di uno o più criteri di ordinamento, che vengono applicati in sequenza.
È possibile indicare quali attributi si vogliono estrarre, e in quale ordine.
Il risultato della select viene prodotto su standard output, un oggetto per riga e con i valori degli attributi separati dal carattere '|' (pipe). Opzionalmente può essere prodotta una riga di header con i nomi degli attributi.
N.B.: il file prodotto in output può contenere alcune sequenze speciali che vanno gestite opportunamente:
I dati vengono letti da standard input nello stesso formato prodotto dalla funzione select. La riga di header in questo caso è obbligatoria in quanto permette di mappare correttamente i dati.
È possibile indicare un valore di default per gli attributi non valorizzati, ed una directory dove prelevare i file associati ad attributi del tipo fileset.
L'operazione di insert ha successo solo se nella classe non esiste un altro record con la stessa chiave.
In alternativa è possibile specificare direttamente nella linea di comando la lista dei rowid che si vogliono cancellare.
Per ulteriori informazioni sulla sintassi di attivazione e sulle opzioni disponibili lanciare il comando con l'opzione -h.
(c) M. Liberi, last updated: 2026-06-15