OrientDB - Aggiorna record

Update Recordcomando viene utilizzato per modificare il valore di un particolare record. SET è il comando di base per aggiornare un particolare valore di campo.

La seguente dichiarazione è la sintassi di base del comando Update.

UPDATE <class>|cluster:<cluster>|<recordID> 
   [SET|INCREMENT|ADD|REMOVE|PUT <field-name> = <field-value>[,]*] |[CONTENT| MERGE <JSON>] 
   [UPSERT] 
   [RETURN <returning> [<returning-expression>]] 
   [WHERE <conditions>] 
   [LOCK default|record] 
   [LIMIT <max-records>] [TIMEOUT <timeout>]

Di seguito sono riportati i dettagli sulle opzioni nella sintassi precedente.

SET - Definisce il campo da aggiornare.

INCREMENT - Incrementa il valore del campo specificato del valore specificato.

ADD - Aggiunge il nuovo elemento nei campi di raccolta.

REMOVE - Rimuove un elemento dal campo di raccolta.

PUT - Inserisce una voce nel campo della mappa.

CONTENT - Sostituisce il contenuto del record con il contenuto del documento JSON.

MERGE - Unisce il contenuto del record con un documento JSON.

LOCK- Specifica come bloccare i record tra il caricamento e l'aggiornamento. Abbiamo due opzioni da specificareDefault e Record.

UPSERT- Aggiorna un record se esiste o inserisce un nuovo record in caso contrario. Aiuta nell'esecuzione di una singola query al posto dell'esecuzione di due query.

RETURN - Specifica un'espressione da restituire invece del numero di record.

LIMIT - Definisce il numero massimo di record da aggiornare.

TIMEOUT - Definisce il tempo in cui si desidera consentire l'esecuzione dell'aggiornamento prima che scada.

Esempio

Consideriamo la stessa tabella Customer che abbiamo utilizzato nel capitolo precedente.

Sr.No. Nome Età
1 Satish 25
2 Krishna 26
3 Kiran 29
4 Javeed 21
5 Raja 29

Prova la seguente query per aggiornare l'età di un cliente "Raja".

Orientdb {db = demo}> UPDATE Customer SET age = 28 WHERE name = 'Raja'

Se la query precedente viene eseguita correttamente, otterrai il seguente output.

Updated 1 record(s) in 0.008000 sec(s).

Per controllare il record della tabella Clienti è possibile utilizzare la seguente query.

orientdb {db = demo}> SELECT FROM Customer

Se la query precedente viene eseguita correttamente, otterrai il seguente output.

----+-----+--------+----+-------+---- 
#   |@RID |@CLASS  |id  |name   |age  
----+-----+--------+----+-------+---- 
0   |#11:0|Customer|1   |satish |25   
1   |#11:1|Customer|2   |krishna|26   
2   |#11:2|Customer|3   |kiran  |29 
3   |#11:3|Customer|4   |javeed |21 
4   |#11:4|Customer|5   |raja   |28   
----+-----+--------+----+-------+----