Statement : UPDATE

Aggiornamento di uno o più record.
Return : nr. record aggiornati.
E’ possibile inviare uno o più blocchi <record></record> ciascuno indipendente l’uno dall’altro.

Tag permessi :

  • TemplateCode : codice del template da cui rilevare i dati. In presenza di TemplateCode il tag <stmt> non è preso in considerazione e tutti i campi in esso memorizzati saranno sovrascritti dai dati inviati
  • Stmt : UPDATE
  • Field : elenco dei campi separati da virgola (normalmente col_value e opzionalmente col_file, ma è possibile aggiornare tutti i campi)
  • ParamF : valore dei campi da aggiornare. Questo tag può essere ripetuto e deve essere dello stesso ordinamento dei campi in <Field>
  • Where : è la clausola ‘WHERE’ per l’update.
    Sintassi : nome_campo=? … and/or … (es. col_user=? and col_key=?). I ‘?’ saranno sostituiti in fase di invio stringa con i rispettivi valori che saranno inviati tramite il tag <ParamW>
  • ParamW : valori che sostituiscono i ‘?’ nella clausola ‘<Where>. Questo tag può essere ripetuto e deve essere con lo stesso numero ordinamento dei campi in <Where>
  • Lingua specifica : non importante in fase di update

Esempio unico blocco : con l’invio del blocco sottostante saranno aggiornati 1 o più record che soddisfano le condizioni di Where. Prestare attenzione!
Nell’esempio sottostante si effettua una sostituzione della key ‘name’ in ‘firstname’ di tutti i record del “col_user=’User X’ e con key=’name'”.
Equivale all’istruzione mysql :
UPDATE <table_xxxx> SET col_key=’firstname’ WHERE col_user=’User X’ AND col_key=’name’

<record>
	<stmt>update</stmt>
	<field>col_key</field>
	<paramf>firstname</paramf>
	<where>col_user=? AND col_key=?</where>
	<paramw>User X</paramw>
	<paramw>name</paramw>
</record>

Esempio più blocchi associati sotto una unica ‘idkey’ creata in automatico : Con l’invio del blocco sottostante saranno inseriti 5 record tutti associati ad una unica ‘idkey’ creata in automatico.

<record>
	<stmt>update</stmt>
	<field>col_value</field>
	<paramf>henry</paramf>
	<where>col_user=? AND col_key=? and col_idkey=?</where>
	<paramw>User X</paramw>
	<paramw>name</paramw>
	<paramw>101</paramw>
</record>
<record>
	<field>col_value</field>
	<paramf>77</paramf>
	<where>col_user=? AND col_key=? and col_idkey=?</where>
	<paramw>User X</paramw>
	<paramw>age</paramw>
	<paramw>101</paramw>
</record>
<record>
	<field>col_value, col_file</field>
	<paramf>photo2.jpg</paramf>
	<paramf>...stream_of_file..."</paramf>
	<where>col_user=? AND col_key=? and col_idkey=101</where>
	<paramw>User X</paramw>
	<paramw>photo</paramw>
	<paramw>101</paramw>
</record>