UPDATE - Amazon Quantum Ledger Database (Amazon QLDB)

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

UPDATE

UsarUPDATEpara modificar el valor de uno o más elementos de un documento en Amazon QLDB. Si un elemento no existe, se inserta.

También puede usar este comando para insertar y eliminar elementos específicos de un documento de forma explícita, de forma similar aFROM (INSERT, REMOVE o SET)Instrucciones

nota

Para obtener información sobre cómo controlar el acceso para ejecutar este comando de PartiQL en tablas específicas, consulteIntroducción al modo de permisos estándar en Amazon QLDB.

Sintaxis

CONJUNTO DE ACTUALIZACIONES

Actualiza uno o más elementos de un documento. Si un elemento no existe, se inserta. Semánticamente es lo mismo que elDE CONJUNTOstatement.

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

ACTUALIZACIÓN-INSERT

Inserta un elemento nuevo en un documento existente. Para insertar un nuevo documento de nivel superior en una tabla, debe usarINSERT.

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

ACTUALIZAR-ELIMINAR

Eliminar un elemento existente de un documento o eliminar todo un documento de nivel superior. Este último es semánticamente igual al tradicionalDELETESintaxis.

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

Parámetros

table_name

El nombre de la tabla de usuarios que contiene los datos que se van a modificar. Las instrucciones DML solo se admiten en la configuración predeterminadaVisualización de los usuarios. Cada declaración solo se puede ejecutar en una sola tabla.

COMOtable_alias

(Opcional) Un alias definido por el usuario que abarca una tabla que se va a actualizar. LaASes opcional.

PORid_alias

(Opcional) Un alias definido por el usuario que enlaza con elidcampo de metadatos de cada documento del conjunto de resultados. El alias debe declararse en la tablaUPDATEmediante el uso delBYPalabra clave. Esto resulta útil cuando desea filtrar en elID deal consultar la vista de usuario predeterminada. Para obtener más información, consulte Uso de la cláusula BY para consultar el ID de documento.

elemento

Elemento de documento que se va a crear o modificar.

data

Un nuevo valor para el elemento.

Anombre_de_clave

Un nombre de clave que se agregará en los documentos que se van a modificar. Debe especificar laVALUEjunto al nombre de la clave. Es necesario para insertar un nuevo valorATuna posición específica dentro de un documento.

WHERE condition (condición)

Criterios de selección para los documentos que se van a modificar.

nota

Si omite elWHERE, se modificarán todos los documentos de la tabla.

Valor devuelto

documentId: el identificador único de cada documento que ha actualizado.

Ejemplos

Actualiza un campo de un documento. Si el campo no existe, se inserta.

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

Filtrar en el documento asignado por el sistemaidcampo de metadatos.

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

Sobrescribir un documento completo.

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'

Modificar laPersonIdfield delprimeroelemento en elOwners.SecondaryOwnerslista dentro de un documento.

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

Insertar{'Mileage':26500}como un par nombre-valor de nivel superior dentro de un documento delVehiclemesa.

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

Adjuntar{'PersonId':'abc123'}como un par nombre-valor enOwners.SecondaryOwnersde un documento en elVehicleRegistrationmesa. Tenga en cuenta queOwners.SecondaryOwnersya debe existir y debe ser un tipo de datos de lista para que esta declaración sea válida. De lo contrario, la palabra claveATes obligatorio en elINSERT INTOCláusula clave.

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

Insertar{'PersonId':'abc123'}como elprimeroelemento en el elemento existenteOwners.SecondaryOwnerslista dentro de un documento.

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

Anexar varios pares de nombre-valor a la existenteOwners.SecondaryOwnerslista dentro de un documento.

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

Eliminar un elemento existente de un documento.

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

Elimina un documento completo de una tabla.

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

Elimine laprimeroelemento de laOwners.SecondaryOwnerslista dentro de un documento en elVehicleRegistrationmesa.

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

Ejecutar mediante programación mediante el controlador

Para obtener información sobre cómo ejecutar esta instrucción mediante programación mediante el controlador QLDB, consulte los siguientes tutoriales enIntroducción al conductor: