OrientDB - Mettre à jour l'enregistrement

Update RecordLa commande est utilisée pour modifier la valeur d'un enregistrement particulier. SET est la commande de base pour mettre à jour une valeur de champ particulière.

L'instruction suivante est la syntaxe de base de la commande 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>]

Voici les détails des options de la syntaxe ci-dessus.

SET - Définit le champ à mettre à jour.

INCREMENT - Incrémente la valeur du champ spécifié de la valeur donnée.

ADD - Ajoute le nouvel élément dans les champs de la collection.

REMOVE - Supprime un élément du champ de collection.

PUT - Met une entrée dans le champ de la carte.

CONTENT - Remplace le contenu de l'enregistrement par le contenu du document JSON.

MERGE - Fusionne le contenu de l'enregistrement avec un document JSON.

LOCK- Spécifie comment verrouiller les enregistrements entre le chargement et la mise à jour. Nous avons deux options à spécifierDefault et Record.

UPSERT- Met à jour un enregistrement s'il existe ou insère un nouvel enregistrement dans le cas contraire. Il aide à exécuter une seule requête au lieu d'exécuter deux requêtes.

RETURN - Spécifie une expression à renvoyer au lieu du nombre d'enregistrements.

LIMIT - Définit le nombre maximum d'enregistrements à mettre à jour.

TIMEOUT - Définit la durée pendant laquelle vous souhaitez autoriser l'exécution de la mise à jour avant son expiration.

Exemple

Considérons la même table Customer que nous avons utilisée dans le chapitre précédent.

N ° Sr. Nom Âge
1 Satish 25
2 Krishna 26
3 Kiran 29
4 Javeed 21
5 Raja 29

Essayez la requête suivante pour mettre à jour l'âge d'un client «Raja».

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

Si la requête ci-dessus est exécutée avec succès, vous obtiendrez la sortie suivante.

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

Pour vérifier l'enregistrement de la table Customer, vous pouvez utiliser la requête suivante.

orientdb {db = demo}> SELECT FROM Customer

Si la requête ci-dessus est exécutée avec succès, vous obtiendrez la sortie suivante.

----+-----+--------+----+-------+---- 
#   |@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   
----+-----+--------+----+-------+----