Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
UPDATEcommande dans Amazon QLDB
Important
Avis de fin de support : les clients existants pourront utiliser Amazon QLDB jusqu'à la fin du support le 31 juillet 2025. Pour plus de détails, consultez Migrer un Amazon QLDB Ledger vers Amazon Aurora SQL Postgre
Dans AmazonQLDB, utilisez la UPDATE
commande pour modifier la valeur d'un ou de plusieurs éléments d'un document. Si un élément n'existe pas, il est inséré.
Vous pouvez également utiliser cette commande pour insérer et supprimer explicitement des éléments spécifiques dans un document, comme des FROM(INSERTREMOVE, ouSET) instructions.
Note
Pour savoir comment contrôler l'accès afin d'exécuter cette commande partiQL sur des tables spécifiques, consultez. Commencer à utiliser le mode d'autorisation standard sur Amazon QLDB
Syntaxe
UPDATE-SET
Mettez à jour un ou plusieurs éléments d'un document. Si un élément n'existe pas, il est inséré. Sémantiquement, c'est la même chose que l'instruction FROM- SET.
UPDATE
table_name
[ AStable_alias
] [ BYid_alias
] SETelement
=data
[,element
=data
, ... ] [ WHEREcondition
]
UPDATE-INSERT
Insérez un nouvel élément dans un document existant. Pour insérer un nouveau document de niveau supérieur dans un tableau, vous devez utiliserINSERT.
UPDATE
table_name
[ AStable_alias
] [ BYid_alias
] INSERT INTOelement
VALUEdata
[ ATkey_name
] [ WHEREcondition
]
UPDATE-REMOVE
Supprimez un élément existant dans un document ou supprimez l'intégralité d'un document de niveau supérieur. Cette dernière est sémantiquement identique à la syntaxe traditionnelleDELETE.
UPDATE
table_name
[ AStable_alias
] [ BYid_alias
] REMOVEelement
[ WHEREcondition
]
Paramètres
table_name
-
Nom de la table utilisateur contenant les données à modifier. DMLles instructions ne sont prises en charge que dans la vue utilisateur par défaut. Chaque instruction ne peut être exécutée que sur une seule table.
- AS
table_alias
-
(Facultatif) Alias défini par l'utilisateur qui s'étend sur une table à mettre à jour. Le
AS
mot clé est facultatif. - BY
id_alias
-
(Facultatif) Alias défini par l'utilisateur qui est lié au champ de
id
métadonnées de chaque document du jeu de résultats. L'alias doit être déclaré dans laUPDATE
clause à l'aide duBY
mot clé. Cela est utile lorsque vous souhaitez filtrer sur l'ID du document lorsque vous recherchez l'affichage utilisateur par défaut. Pour plus d’informations, consultez Utilisation de la clause BY pour demander l'ID du document. element
-
Élément de document à créer ou à modifier.
data
-
Nouvelle valeur pour l'élément.
- AT
key_name
-
Un nom clé à ajouter dans les documents à modifier. Vous devez spécifier le nom correspondant
VALUE
ainsi que le nom de la clé. Cela est nécessaire pour insérer une nouvelle valeur ouAT
une position spécifique dans un document. - WHERE
condition
-
Les critères de sélection des documents à modifier.
Note
Si vous omettez la WHERE
clause, tous les documents du tableau sont modifiés.
Valeur renvoyée
documentId
— L'identifiant unique de chaque document que vous avez mis à jour.
Exemples
Mettez à jour un champ dans un document. Si le champ n'existe pas, il est inséré.
UPDATE Person AS p SET p.LicenseNumber = 'HOLLOR123ZZ' WHERE p.GovId = '111-22-3333'
Filtrez sur le champ de id
métadonnées du document attribué par le système.
UPDATE Person AS p BY pid SET p.LicenseNumber = 'HOLLOR123ZZ' WHERE pid = '
documentId
'
Remplacez l'intégralité d'un document.
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'
Modifiez le PersonId
champ du premier élément de la Owners.SecondaryOwners
liste dans un document.
UPDATE VehicleRegistration AS r SET r.Owners.SecondaryOwners[0].PersonId = 'abc123' WHERE r.VIN = '1N4AL11D75C109151'
Insérer {'Mileage':26500}
en tant que paire nom-valeur de haut niveau dans un document du tableau. Vehicle
UPDATE Vehicle AS v INSERT INTO v VALUE 26500 AT 'Mileage' WHERE v.VIN = '1N4AL11D75C109151'
Ajouter {'PersonId':'abc123'}
sous forme de paire nom-valeur dans le Owners.SecondaryOwners
champ d'un document du tableau. VehicleRegistration
Notez qu'Owners.SecondaryOwners
il doit déjà exister et qu'il doit s'agir d'un type de données de liste pour que cette instruction soit valide. Dans le cas contraire, le mot clé AT
est obligatoire dans la INSERT INTO
clause.
UPDATE VehicleRegistration AS r INSERT INTO r.Owners.SecondaryOwners VALUE { 'PersonId' : 'abc123' } WHERE r.VIN = '1N4AL11D75C109151'
Insérer {'PersonId':'abc123'}
en tant que premier élément de la Owners.SecondaryOwners
liste existante dans un document.
UPDATE VehicleRegistration AS r INSERT INTO r.Owners.SecondaryOwners VALUE {'PersonId' : 'abc123'} AT 0 WHERE r.VIN = '1N4AL11D75C109151'
Ajoutez plusieurs paires nom-valeur à la Owners.SecondaryOwners
liste existante dans un document.
UPDATE VehicleRegistration AS r INSERT INTO r.Owners.SecondaryOwners << {'PersonId' : 'abc123'}, {'PersonId' : 'def456'} >> WHERE r.VIN = '1N4AL11D75C109151'
Supprime un élément existant dans un document.
UPDATE Person AS p REMOVE p.Address WHERE p.GovId = '111-22-3333'
Supprime un document entier d'un tableau.
UPDATE Person AS p REMOVE p WHERE p.GovId = '111-22-3333'
Supprime le premier élément de la Owners.SecondaryOwners
liste dans un document du VehicleRegistration
tableau.
UPDATE VehicleRegistration AS r REMOVE r.Owners.SecondaryOwners[0] WHERE r.VIN = '1N4AL11D75C109151'
Exécution par programmation à l'aide du pilote
Pour savoir comment exécuter cette instruction par programmation à l'aide du QLDB pilote, consultez les didacticiels suivants dans Getting started with the driver :
-
Java : Tutoriel de démarrage rapide | Référence de livre de cuisine
-
.NET: Tutoriel de démarrage rapide | Référence de livre de cuisine
-
Allez : Tutoriel de démarrage rapide | Référence de livre de cuisine
-
Node.js : Tutoriel de démarrage rapide | Référence de livre de cuisine
-
Python : Tutoriel de démarrage rapide | Référence de livre de cuisine