Tous les produits
Search
Centre de documentation

Tablestore:UpdateRow

Dernière mise à jour :Aug 18, 2026

L'opération UpdateRow met à jour les données d'une ligne spécifiée.

Remarque

Si la ligne spécifiée n'existe pas, le système insère une nouvelle ligne. Si la ligne existe, l'opération UpdateRow ajoute, modifie ou supprime les valeurs des colonnes d'attributs spécifiées selon la requête.

Structure du message de requête

message UpdateRowRequest {
    required string table_name = 1;
    required bytes row_change = 2;
    required Condition condition = 3;
    optional ReturnContent return_content = 4;
    optional string transaction_id = 5;
}

Name

Type

Required

Description

table_name

string

Yes

Nom de la table à mettre à jour.

row_change

bytes

Yes

Données de mise à jour, incluant la clé primaire et les colonnes d'attributs, encodées au format PlainBuffer. Pour plus d'informations, consultez PlainBuffer.

Tablestore ajoute, modifie ou supprime les valeurs des colonnes d'attributs spécifiées selon le paramètre UpdateType dans row_change. Les colonnes d'attributs absentes de row_change ne sont pas affectées.

Valeurs valides pour UpdateType :

  • PUT : La valeur doit être une valeur de colonne d'attribut valide. Si la colonne n'existe pas, le système la crée. Si la colonne existe, la valeur est écrasée.

  • DELETE : La valeur doit être vide. Spécifiez un horodatage pour supprimer cette version spécifique de la colonne.

  • DELETE_ALL : La valeur et l'horodatage doivent tous deux être vides. Cette option supprime toutes les versions de la colonne.

    Remarque

    La suppression de toutes les colonnes d'attributs d'une ligne n'équivaut pas à la suppression de la ligne elle-même. Pour supprimer la ligne, utilisez l'opération DeleteRow.

condition

Condition

Yes

Indique s'il faut vérifier l'existence de la ligne avant la mise à jour. Valeurs valides :

  • IGNORE (par défaut) : Ignore la vérification d'existence. L'opération réussit, que la ligne existe ou non.

  • EXPECT_EXIST : Exige que la ligne existe. Si la ligne n'existe pas, l'opération échoue et renvoie une erreur.

return_content

ReturnContent

No

Type de données à renvoyer après une écriture réussie. Seul le renvoi de la clé primaire est pris en charge, principalement pour la fonctionnalité de colonne de clé primaire à incrémentation automatique.

transaction_id

string

No

ID de transaction locale. Définissez ce paramètre lors de l'utilisation de la fonctionnalité de transaction locale.

Structure du message de réponse

message UpdateRowResponse {
    required ConsumedCapacity consumed = 1;
    optional bytes row = 2;
}

Name

Type

Description

consumed

ConsumedCapacity

Unités de capacité consommées par l'opération. Pour plus d'informations, consultez Consommation d'unités de capacité.

row

bytes

Données renvoyées lorsque return_content est défini. Si return_content n'est pas défini ou si aucune valeur n'est renvoyée, ce paramètre est NULL.

Les données renvoyées sont encodées au format PlainBuffer. Pour plus d'informations sur PlainBuffer, consultez PlainBuffer.

Utiliser un SDK

Utilisez un SDK pour l'un des langages suivants afin de mettre à jour une seule ligne.

Consommation d'unités de capacité

  • Si la ligne n'existe pas, les unités de capacité consommées dépendent du paramètre de vérification de condition.

    • IGNORE : Les UC d'écriture consommées correspondent à la somme de la taille des données de la clé primaire et de la taille des données des colonnes d'attributs, divisée par 4 Ko et arrondie à l'entier supérieur. Pour les colonnes d'attributs en cours de suppression, seule la longueur du nom de la colonne est prise en compte dans la taille des données.

    • EXPECT_EXIST : L'opération échoue et consomme 1 UC d'écriture et 1 UC de lecture.

  • Si la ligne existe, les unités de capacité consommées dépendent du paramètre de vérification de condition.

    • IGNORE : Les UC d'écriture consommées correspondent à la somme de la taille des données de la clé primaire et de la taille des données des colonnes d'attributs, divisée par 4 Ko et arrondie à l'entier supérieur. Pour les colonnes d'attributs en cours de suppression, seule la longueur du nom de la colonne est prise en compte dans la taille des données.

    • EXPECT_EXIST : Consomme les mêmes UC d'écriture que IGNORE, plus des UC de lecture supplémentaires. Les UC de lecture consommées correspondent à la taille des données de la clé primaire divisée par 4 Ko et arrondie à l'entier supérieur.

    Pour plus d'informations sur le calcul de la taille des données, consultez Tarification.

  • Si la requête expire et que les résultats sont indéfinis, des UC peuvent ou non être consommées.

  • En cas d'erreur interne (code d'état HTTP : 5xx), aucune unité de capacité n'est consommée. Pour les autres erreurs, 1 UC d'écriture et 1 UC de lecture sont consommées.