UPDATEcomando in Amazon QLDB - Database Amazon Quantum Ledger (Amazon) QLDB

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à.

UPDATEcomando in Amazon QLDB

Importante

Avviso di fine del supporto: i clienti esistenti potranno utilizzare Amazon QLDB fino alla fine del supporto il 31/07/2025. Per ulteriori dettagli, consulta Migrare un Amazon QLDB Ledger ad Amazon Aurora Postgre. SQL

In AmazonQLDB, usa il UPDATE comando per modificare il valore di uno o più elementi all'interno di un documento. Se un elemento non esiste, viene inserito.

È inoltre possibile utilizzare questo comando per inserire e rimuovere in modo esplicito elementi specifici all'interno di un documento, in modo simile alle FROM(INSERTREMOVE, oSET) istruzioni.

Nota

Per informazioni su come controllare l'accesso per eseguire questo comando PartiQL su tabelle specifiche, vedere. Guida introduttiva alla modalità di autorizzazione standard in Amazon QLDB

Sintassi

UPDATE-SET

Aggiornare uno o più elementi all'interno di un documento. Se un elemento non esiste, viene inserito. È semanticamente uguale all'istruzione FROM- SET.

UPDATE table_name [ AS table_alias ] [ BY id_alias ] SET element = data [, element = data, ... ] [ WHERE condition ]

UPDATE-INSERT

Inserisce un nuovo elemento all'interno di un documento esistente. Per inserire un nuovo documento di primo livello in una tabella, è necessario utilizzareINSERT.

UPDATE table_name [ AS table_alias ] [ BY id_alias ] INSERT INTO element VALUE data [ AT key_name ] [ WHERE condition ]

UPDATE-REMOVE

Rimuovi un elemento esistente all'interno di un documento o rimuovi un intero documento di primo livello. Quest'ultima è semanticamente la stessa della sintassi tradizionale. DELETE

UPDATE table_name [ AS table_alias ] [ BY id_alias ] REMOVE element [ WHERE condition ]

Parametri

table_name

Il nome della tabella utente contenente i dati da modificare. DMLle istruzioni sono supportate solo nella visualizzazione utente predefinita. Ogni istruzione può essere eseguita solo su una singola tabella.

AS table_alias

(Facoltativo) Un alias definito dall'utente che si estende su una tabella da aggiornare. La AS parola chiave è facoltativa.

BY id_alias

(Facoltativo) Un alias definito dall'utente che si collega al campo dei id metadati di ogni documento nel set di risultati. L'alias deve essere dichiarato nella clausola utilizzando la UPDATE parola chiave. BY Ciò è utile quando si desidera filtrare in base all'ID del documento durante l'interrogazione della visualizzazione utente predefinita. Per ulteriori informazioni, consulta Utilizzo della clausola BY per interrogare l'ID del documento.

element

Un elemento del documento da creare o modificare.

data

Un nuovo valore per l'elemento.

AT key_name

Un nome chiave da aggiungere all'interno dei documenti da modificare. È necessario specificare il corrispondente VALUE insieme al nome della chiave. Questo è necessario per inserire un nuovo valore AT in una posizione specifica all'interno di un documento.

WHERE condition

I criteri di selezione per i documenti da modificare.

Nota

Se si WHERE omette la clausola, tutti i documenti della tabella vengono modificati.

Valore restituito

documentId— L'ID univoco di ogni documento aggiornato.

Esempi

Aggiorna un campo in un documento. Se il campo non esiste, viene inserito.

UPDATE Person AS p SET p.LicenseNumber = 'HOLLOR123ZZ' WHERE p.GovId = '111-22-3333'

Filtrare in base al campo dei id metadati del documento assegnato dal sistema.

UPDATE Person AS p BY pid SET p.LicenseNumber = 'HOLLOR123ZZ' WHERE pid = 'documentId'

Sovrascrivi un intero documento.

UPDATE Person AS p SET p = { 'FirstName' : 'Rosemarie', 'LastName' : 'Holloway', 'DOB' : `1977-06-18T`, 'GovId' : '111-22-3333', 'GovIdType' : 'Driver License', 'Address' : '4637 Melrose Street, Ellensburg, WA, 98926' } WHERE p.GovId = '111-22-3333'

Modifica il PersonId campo del primo elemento dell'Owners.SecondaryOwnerselenco all'interno di un documento.

UPDATE VehicleRegistration AS r SET r.Owners.SecondaryOwners[0].PersonId = 'abc123' WHERE r.VIN = '1N4AL11D75C109151'

Inserisce {'Mileage':26500} come coppia nome-valore di primo livello all'interno di un documento della tabella. Vehicle

UPDATE Vehicle AS v INSERT INTO v VALUE 26500 AT 'Mileage' WHERE v.VIN = '1N4AL11D75C109151'

Aggiungi {'PersonId':'abc123'} come coppia nome-valore nel Owners.SecondaryOwners campo di un documento nella tabella. VehicleRegistration Nota che questa dichiarazione Owners.SecondaryOwners deve già esistere e deve essere un tipo di dati di elenco affinché questa istruzione sia valida. In caso contrario, la parola chiave AT è obbligatoria nella INSERT INTO clausola.

UPDATE VehicleRegistration AS r INSERT INTO r.Owners.SecondaryOwners VALUE { 'PersonId' : 'abc123' } WHERE r.VIN = '1N4AL11D75C109151'

Inserisci {'PersonId':'abc123'} come primo elemento nell'Owners.SecondaryOwnerselenco esistente all'interno di un documento.

UPDATE VehicleRegistration AS r INSERT INTO r.Owners.SecondaryOwners VALUE {'PersonId' : 'abc123'} AT 0 WHERE r.VIN = '1N4AL11D75C109151'

Aggiungi più coppie nome-valore all'Owners.SecondaryOwnerselenco esistente all'interno di un documento.

UPDATE VehicleRegistration AS r INSERT INTO r.Owners.SecondaryOwners << {'PersonId' : 'abc123'}, {'PersonId' : 'def456'} >> WHERE r.VIN = '1N4AL11D75C109151'

Rimuove un elemento esistente all'interno di un documento.

UPDATE Person AS p REMOVE p.Address WHERE p.GovId = '111-22-3333'

Rimuove un intero documento da una tabella.

UPDATE Person AS p REMOVE p WHERE p.GovId = '111-22-3333'

Rimuove il primo elemento dell'Owners.SecondaryOwnerselenco all'interno di un documento della VehicleRegistration tabella.

UPDATE VehicleRegistration AS r REMOVE r.Owners.SecondaryOwners[0] WHERE r.VIN = '1N4AL11D75C109151'

Esecuzione a livello di codice utilizzando il driver

Per informazioni su come eseguire questa istruzione a livello di codice utilizzando il QLDB driver, consulta i seguenti tutorial in Guida introduttiva al driver: