Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
JSON.SET
Imposta JSON i valori nel percorso.
Se il percorso richiede un membro oggetto:
Se l'elemento principale non esiste, il comando restituirà un NONEXISTENT errore.
Se l'elemento principale esiste ma non è un oggetto, il comando restituiràERROR.
Se l'elemento padre esiste ed è un oggetto:
Se il membro non esiste, un nuovo membro verrà accodato all'oggetto padre se e solo se l'oggetto padre è l'ultimo figlio nel percorso. In caso contrario, il comando restituirà NONEXISTENT un errore.
Se il membro esiste, il suo valore verrà sostituito dal JSON valore.
Se il percorso richiede un indice di array:
Se l'elemento principale non esiste, il comando restituirà un NONEXISTENT errore.
Se l'elemento principale esiste ma non è un array, il comando verrà restituitoERROR.
Se l'elemento principale esiste ma l'indice non è compreso nei limiti, il comando restituirà un OUTOFBOUNDARIES errore.
Se l'elemento principale esiste e l'indice è valido, l'elemento verrà sostituito dal nuovo JSON valore.
Se il percorso richiede un oggetto o un array, il valore (oggetto o array) verrà sostituito dal nuovo JSON valore.
Sintassi
JSON.SET <key> <path> <json> [NX | XX]
[NX | XX] Dove è possibile avere 0 o 1 identificatori [NX | XX]
chiave (obbligatoria) — chiave del tipo di documento JSON
path (richiesto) — JSON percorso. Per una nuova chiave, il JSON percorso deve essere la radice «.».
NX (opzionale) — Se il percorso è la radice, imposta il valore solo se la chiave non esiste, ad esempio inserisci un nuovo documento. Se il percorso non è la radice, imposta il valore solo se il percorso non esiste, ad esempio inserisci un valore nel documento.
XX (opzionale) — Se il percorso è la radice, imposta il valore solo se la chiave esiste, ad esempio sostituisci il documento esistente. Se il percorso non è la radice, imposta il valore solo se il percorso esiste, ad esempio aggiorna il valore esistente.
Valori restituiti
Stringa semplice 'OK' se l’esito è positivo.
-
Null se la condizione NX o XX non viene soddisfatta.
Examples (Esempi)
Sintassi avanzata del percorso:
127.0.0.1:6379> JSON.SET k1 . '{"a":{"a":1, "b":2, "c":3}}' OK 127.0.0.1:6379> JSON.SET k1 $.a.* '0' OK 127.0.0.1:6379> JSON.GET k1 "{\"a\":{\"a\":0,\"b\":0,\"c\":0}}" 127.0.0.1:6379> JSON.SET k2 . '{"a": [1,2,3,4,5]}' OK 127.0.0.1:6379> JSON.SET k2 $.a[*] '0' OK 127.0.0.1:6379> JSON.GET k2 "{\"a\":[0,0,0,0,0]}"
Sintassi limitata del percorso:
127.0.0.1:6379> JSON.SET k1 . '{"c":{"a":1, "b":2}, "e": [1,2,3,4,5]}' OK 127.0.0.1:6379> JSON.SET k1 .c.a '0' OK 127.0.0.1:6379> JSON.GET k1 "{\"c\":{\"a\":0,\"b\":2},\"e\":[1,2,3,4,5]}" 127.0.0.1:6379> JSON.SET k1 .e[-1] '0' OK 127.0.0.1:6379> JSON.GET k1 "{\"c\":{\"a\":0,\"b\":2},\"e\":[1,2,3,4,0]}" 127.0.0.1:6379> JSON.SET k1 .e[5] '0' (error) OUTOFBOUNDARIES Array index is out of bounds