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
-
Öffnen Sie die Amazon QLDB-Konsole unter https://console.aws.amazon.com/qldb
. -
Wählen Sie im Navigationsbereich den PartiQL-Editor aus.
-
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.
-
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 derPerson
-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 derPerson
-Tabelle abfragen möchten. In dieser Ansicht sind Ihre Daten imdata
-Feld verschachtelt und Metadaten sind immetadata
-Feld verschachtelt. -
Verwenden Sie jetzt diese
id
in einerUPDATE
-Anweisung, um das entsprechende Dokument in derVehicleRegistration
-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'
-
Zum Übertragen der Eigentümerschaft des Fahrzeugs an Brent in der Stadt Everett suchen Sie zunächst seine
id
in derPerson
-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 desPrimaryOwner
und desCity
in derVehicleRegistration
-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
- undPrimaryOwner
-Felder durch Ausgabe dieser Anweisung geändert haben.SELECT r.Owners.PrimaryOwner, r.City FROM VehicleRegistration AS r WHERE r.VIN = '1N4AL11D75C109151'
-
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 dieSecondaryOwners
-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 idVergewissern 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.