Etapa 4: Modificar documentos em um ledger - Amazon Quantum Ledger Database (Amazon QLDB)

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Etapa 4: Modificar documentos em um ledger

Agora que você tem dados com os quais trabalhar, pode começar a fazer alterações nos documentos no vehicle-registration ledger no Amazon QLDB. Por exemplo, considere o Audi A5 com VIN 1N4AL11D75C109151. Este carro é inicialmente de propriedade de um motorista chamado Raul Lewis em Seattle, WA.

Suponha que Raul venda o carro para um residente em Everett, WA chamado Brent Logan. Então, Brent e Alexis Pena decidem se casar. Brent quer adicionar Alexis como proprietária secundária no registro. Nesta etapa, as seguintes instruções de linguagem de manipulação de dados (DML) demonstram como fazer as alterações apropriadas em seu ledger para refletir esses eventos.

dica

Como prática recomendada, use o sistema de um documento atribuído pelo sistema id como uma chave estrangeira. Embora você possa definir campos destinados a serem identificadores exclusivos (por exemplo, o VIN de um veículo), o verdadeiro identificador exclusivo de um documento é seu id. Esse campo está incluído nos metadados do documento, que você pode consultar na visualização confirmada (a visualização definida pelo sistema de uma tabela).

Para obter mais informações sobre visualizações no QLDB, consulte Conceitos principais. Para saber mais sobre metadados, consulte Consultando metadados do documento.

Para modificar documentos
  1. Abra o console do Amazon QLDB em https://console.aws.amazon.com/qldb.

  2. No painel de navegação, selecione Editor PartiQL.

  3. Escolha o ledger vehicle-registration.

    nota

    Se você configurar seu ledger usando o atributo automático Carregar dados de exemplo do console, vá para a etapa 6.

  4. Se você executou as instruções INSERT manualmente para carregar os dados de amostra, continue com essas etapas.

    Para registrar inicialmente Raul como proprietário desse veículo, comece encontrando o documento atribuído pelo sistema id na tabela Person. Esse campo está incluído nos metadados do documento, que você pode consultar na visualização definida pelo sistema de uma tabela, chamada visualização confirmada.

    Na janela do editor de consulta, insira a instrução a seguir e, em seguida, escolha Executar.

    SELECT metadata.id FROM _ql_committed_Person AS p WHERE p.data.FirstName = 'Raul' and p.data.LastName = 'Lewis'

    O prefixo _ql_committed_ é um prefixo reservado que significa que você deseja consultar a exibição confirmada da tabela Person. Nessa exibição, seus dados estão aninhados no campo data e os metadados estão aninhados no campo metadata.

  5. Agora, use esse id em uma instrução UPDATE para modificar o documento apropriado na tabela VehicleRegistration. Insira a instrução a seguir e escolha Executar.

    UPDATE VehicleRegistration AS r SET r.Owners.PrimaryOwner.PersonId = '294jJ3YUoH1IEEm8GSabOs' --replace with your id WHERE r.VIN = '1N4AL11D75C109151'

    Confirme se você modificou o campo Owners emitindo essa instrução.

    SELECT r.Owners FROM VehicleRegistration AS r WHERE r.VIN = '1N4AL11D75C109151'
  6. Para transferir a propriedade do veículo para Brent, na cidade de Everett, primeiro encontre sua id na tabela Person com a seguinte instrução.

    SELECT metadata.id FROM _ql_committed_Person AS p WHERE p.data.FirstName = 'Brent' and p.data.LastName = 'Logan'

    Em seguida, use essa id para atualizar PrimaryOwner e City na tabela VehicleRegistration.

    UPDATE VehicleRegistration AS r SET r.Owners.PrimaryOwner.PersonId = '7NmE8YLPbXc0IqesJy1rpR', --replace with your id r.City = 'Everett' WHERE r.VIN = '1N4AL11D75C109151'

    Confirme se você modificou os campos PrimaryOwner e City emitindo essa instrução.

    SELECT r.Owners.PrimaryOwner, r.City FROM VehicleRegistration AS r WHERE r.VIN = '1N4AL11D75C109151'
  7. Para adicionar Alexis como proprietária secundária do carro, encontre seu Person id.

    SELECT metadata.id FROM _ql_committed_Person AS p WHERE p.data.FirstName = 'Alexis' and p.data.LastName = 'Pena'

    Em seguida, insira esse id na lista SecondaryOwners com a seguinte instrução DML FROM-INSERT.

    FROM VehicleRegistration AS r WHERE r.VIN = '1N4AL11D75C109151' INSERT INTO r.Owners.SecondaryOwners VALUE { 'PersonId' : '5Ufgdlnj06gF5CWcOIu64s' } --replace with your id

    Confirme se você modificou o SecondaryOwners emitindo essa instrução.

    SELECT r.Owners.SecondaryOwners FROM VehicleRegistration AS r WHERE r.VIN = '1N4AL11D75C109151'

Para revisar essas alterações no ledger vehicle-registration, consulte Etapa 5: Visualizar o histórico de revisão de um documento.