Schritt 4: Bearbeiten von Dokumenten in einem Ledger - Amazon Quantum Ledger Database (Amazon QLDB)

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Schritt 4: Bearbeiten von Dokumenten in einem Ledger

Da Sie nun über Daten verfügen, mit denen Sie arbeiten können, können Sie damit beginnen, Änderungen an Dokumenten imvehicle-registration Hauptbuch in Amazon QLDB vorzunehmen. Betrachten Sie beispielsweise den Audi A5 mit VIN 1N4AL11D75C109151. Dieses Auto war ursprünglich im Besitz eines Fahrers namens Raul Lewis in Seattle, WA.

Nehmen wir an, dass Raul das Auto an eine Person namens Brent Logan mit Wohnsitz in Everett, WA, verkauft. Anschließend entscheiden sich Brent und Alexis Pena zu heiraten. Brent möchte Alexis als sekundäre Eigentümer in der Zulassung hinzufügen. In diesem Schritt verdeutlichen die folgenden DML-Anweisungen, wie die entsprechenden Änderungen in Ihrem Ledger vorgenommen werden, um diese Ereignisse zu reflektieren.

Tipp

Es hat sich bewährt, den einem Dokument vom System zugewiesenen Schlüsselid als Fremdschlüssel zu verwenden. Sie können zwar Felder definieren, die eindeutige Kennungen (z. B. eine Kfz-VIN) sein sollen, die echte eindeutige Kennung eines Dokuments ist aber seine id. Dieses Feld ist in den Metadaten des Dokuments enthalten, die Sie in der festgeschriebenen Ansicht (d. h. in der vom System definierten Ansicht der Tabelle) abrufen können.

Weitere Informationen zu Ansichten in QLDB finden Sie unterSchlüsselkonzepte. Weitere Informationen zu Metadaten finden Sie unter Metadaten von Dokumenten abfragen.

So ändern Sie Dokumente
  1. Öffnen Sie die Amazon QLDB-Konsole unter https://console.aws.amazon.com/qldb.

  2. Wählen Sie im Navigationsbereich den PartiQL-Editor aus.

  3. Wählen Sie den vehicle-registration-Ledger aus.

    Anmerkung

    Wenn Sie Ihr Ledger mithilfe der automatischen Funktion „Beispieldaten laden“ der Konsole einrichten, fahren Sie mit Schritt 6 fort.

  4. Wenn Sie INSERT-Anweisungen zum Laden der Beispieldaten manuell ausgeführt haben, fahren Sie mit diesen Schritten fort.

    Um Raul zuerst als Eigentümer des Fahrzeugs zu registrieren, beginnen Sie damit, indem Sie sein vom System zugewiesenes Dokument id in der Person-Tabelle suchen. Dieses Feld ist in den Metadaten des Dokuments enthalten, die Sie in der vom System definierten Ansicht der Tabelle abrufen können. Diese wird bestätigte Ansicht genannt.

    Geben Sie im Fenster des Abfrageeditors die folgende Anweisung ein und klicken Sie dann auf Run (Ausführen).

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

    Das Präfix _ql_committed_ ist ein reserviertes Präfix, das angibt, dass Sie die bestätigte Ansicht der Person-Tabelle abfragen möchten. In dieser Ansicht sind Ihre Daten im data-Feld verschachtelt und Metadaten sind im metadata-Feld verschachtelt.

  5. Verwenden Sie jetzt diese id in einer UPDATE-Anweisung, um das entsprechende Dokument in der VehicleRegistration-Tabelle zu ändern. Geben Sie die folgende Anweisung ein und klicken Sie dann auf Run (Ausführen).

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

    Vergewissern Sie sich, dass Sie das Owners-Feld geändert haben, indem Sie diese Anweisung ausgeben.

    SELECT r.Owners FROM VehicleRegistration AS r WHERE r.VIN = '1N4AL11D75C109151'
  6. Zum Übertragen der Eigentümerschaft des Fahrzeugs an Brent in der Stadt Everett suchen Sie zunächst seine id in der Person-Tabelle mit der folgenden Anweisung.

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

    Verwenden Sie anschließend diese id zum Aktualisieren des PrimaryOwner und des City in der VehicleRegistration-Tabelle.

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

    Vergewissern Sie sich, dass Sie die City- und PrimaryOwner-Felder durch Ausgabe dieser Anweisung geändert haben.

    SELECT r.Owners.PrimaryOwner, r.City FROM VehicleRegistration AS r WHERE r.VIN = '1N4AL11D75C109151'
  7. Um Alexis als sekundäre Eigentümerin des Fahrzeugs hinzuzufügen, suchen Sie ihre Person id.

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

    Fügen Sie diese id anschließend in die SecondaryOwners-Liste mit der folgenden FROM-INSERT-DML-Anweisung hinzu.

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

    Vergewissern Sie sich, dass Sie SecondaryOwners geändert haben, indem Sie diese Anweisung ausgeben.

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

Informationen zum Überprüfen dieser Änderungen im vehicle-registration-Ledger finden Sie unter Schritt 5: Anzeigen des Revisionsverlaufs für ein Dokument.