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.
Paso 4: modificar los documentos de un libro mayor
Ahora que tiene datos con los que trabajar, puede empezar a realizar cambios en los documentos del libro mayor vehicle-registration
de Amazon QLDB. Pensemos, por ejemplo, en el Audi A5 con VIN 1N4AL11D75C109151
. Este automóvil fue inicialmente propiedad de un conductor llamado Raul Lewis en Seattle, WA.
Supongamos que Raul vende el automóvil a un residente en Everett, WA, llamado Brent Logan. Entonces, Brent y Alexis Pena deciden casarse. Brent quiere añadir a Alexis como propietaria secundaria en el registro. En este paso, las siguientes instrucciones del lenguaje de manipulación de datos (DML) muestran cómo realizar los cambios adecuados en el libro mayor para reflejar estos eventos.
sugerencia
Como práctica recomendada, utilice un id
de documento asignado por el sistema como clave externa. Si bien puede definir campos que pretenden ser identificadores únicos (por ejemplo, el VIN de un vehículo), el verdadero identificador único de un documento es su id
. Este campo se incluye en los metadatos del documento, que puede consultar en la vista confirmada (la vista de una tabla definida por el sistema).
Para obtener más información acerca de las vistas en QLDB, consulte Conceptos clave. Para obtener más información sobre metadatos, consulte Consulta de los metadatos del documento.
Para modificar documentos
-
Abra la consola de Amazon QLDB en https://console.aws.amazon.com/qldb
. -
En el panel de navegación, elija Editor PartiQL.
-
Elija el libro mayor
vehicle-registration
.nota
Si configura el libro mayor mediante la característica Cargar datos de muestra de forma automática de la consola, avance al paso 6.
-
Si ejecutó las instrucciones
INSERT
manualmente para cargar los datos de muestra, continúe con estos pasos.Para registrar inicialmente a Raul como propietario de este vehículo, comience por buscar el
id
del documento asignado por el sistema en la tablaPerson
. Este campo se incluye en los metadatos del documento, que puede consultar en la vista de la tabla definida por el sistema llamada vista confirmada.En la ventana del editor de consultas, introduzca la siguiente instrucción, y a continuación elija Ejecutar.
SELECT metadata.id FROM _ql_committed_Person AS p WHERE p.data.FirstName = 'Raul' and p.data.LastName = 'Lewis'
El prefijo
_ql_committed_
es un prefijo reservado que indica que desea consultar la vista confirmada de la tablaPerson
. En esta vista, los datos están anidados en el campodata
y los metadatos están anidados en el campometadata
. -
Ahora, utilice este
id
en una instrucciónUPDATE
para modificar el documento correspondiente de la tablaVehicleRegistration
. Introduzca la siguiente instrucción y, a continuación, seleccione Ejecutar.UPDATE VehicleRegistration AS r SET r.Owners.PrimaryOwner.PersonId = '
294jJ3YUoH1IEEm8GSabOs
' --replace with your id WHERE r.VIN = '1N4AL11D75C109151'Confirme que ha modificado el campo
Owners
emitiendo esta instrucción.SELECT r.Owners FROM VehicleRegistration AS r WHERE r.VIN = '1N4AL11D75C109151'
-
Para transferir la propiedad del vehículo a Brent en la ciudad de Everett, primero busque su
id
en la tablaPerson
con la siguiente instrucción.SELECT metadata.id FROM _ql_committed_Person AS p WHERE p.data.FirstName = 'Brent' and p.data.LastName = 'Logan'
A continuación, utilice este
id
para actualizar elPrimaryOwner
y laCity
en la tablaVehicleRegistration
.UPDATE VehicleRegistration AS r SET r.Owners.PrimaryOwner.PersonId = '
7NmE8YLPbXc0IqesJy1rpR
', --replace with your id r.City = 'Everett' WHERE r.VIN = '1N4AL11D75C109151'Confirme que ha modificado los campos
PrimaryOwner
yCity
enviando esta instrucción.SELECT r.Owners.PrimaryOwner, r.City FROM VehicleRegistration AS r WHERE r.VIN = '1N4AL11D75C109151'
-
Para añadir a Alexis como propietaria secundaria del automóvil, busque su
Person id
.SELECT metadata.id FROM _ql_committed_Person AS p WHERE p.data.FirstName = 'Alexis' and p.data.LastName = 'Pena'
Luego, inserte
id
en la listaSecondaryOwners
con la siguiente instrucción de DML FROM-INSERT.FROM VehicleRegistration AS r WHERE r.VIN = '1N4AL11D75C109151' INSERT INTO r.Owners.SecondaryOwners VALUE { 'PersonId' : '
5Ufgdlnj06gF5CWcOIu64s
' } --replace with your idConfirme que ha modificado el campo
SecondaryOwners
enviando esta instrucción.SELECT r.Owners.SecondaryOwners FROM VehicleRegistration AS r WHERE r.VIN = '1N4AL11D75C109151'
Para revisar estos cambios en el libro mayor vehicle-registration
, consulte Paso 5: ver el historial de revisiones de un documento.