Tous les produits
Search
Centre de documentation

Tablestore:GetRow

Dernière mise à jour :Aug 18, 2026

Lit une seule ligne de données en fonction de la clé primaire spécifiée.

Syntaxe de la requête

message GetRowRequest {
    required string table_name = 1;
    required bytes primary_key = 2; // The data is encoded as binary data in the PlainBuffer format. 
    repeated string columns_to_get = 3; // If you do not specify this parameter, all columns are read. 
    optional TimeRange time_range = 4;
    optional int32 max_versions = 5;
    optional bytes filter = 7;
    optional string start_column = 8;
    optional string end_column = 9;
    optional bytes token = 10;
    optional string transaction_id = 11;
}

Paramètre

Type

Obligatoire

Description

table_name

string

Oui

Nom de la table dont vous souhaitez lire les données.

primary_key

bytes

Oui

Toutes les colonnes de clé primaire de la ligne, y compris les noms et les valeurs des colonnes de clé primaire. Les colonnes de clé primaire sont encodées au format PlainBuffer. Pour plus d'informations, consultez PlainBuffer.

columns_to_get

string

Non

Noms des colonnes à renvoyer. Si vous ne spécifiez pas ce paramètre, toutes les colonnes de la ligne sont renvoyées. La valeur de ce paramètre peut contenir jusqu'à 128 chaînes.

Si la colonne spécifiée n'existe pas, ses données ne sont pas renvoyées. Si vous spécifiez des noms de colonnes en double, la réponse n'inclut cette colonne qu'une seule fois.

time_range

TimeRange

Non (vous devez spécifier au moins l'un des paramètres time_range ou max_versions.)

Plage d'horodatages dans laquelle vous souhaitez lire plusieurs versions de données. La valeur minimale est 0 et la valeur maximale est INT64.MAX. Unité : millisecondes.

Pour interroger des données comprises dans une plage horaire donnée, spécifiez start_time et end_time. Pour interroger des données contenant un horodatage spécifique, spécifiez specific_time.

Par exemple, si la valeur de time_range est [100, 200), l'horodatage des données dans les colonnes renvoyées doit se situer dans la plage [100, 200).

max_versions

int32

Non (vous devez spécifier au moins l'un des paramètres time_range ou max_versions.)

Nombre maximal de versions de données à renvoyer.

Si la valeur de max_versions est 2, un maximum de deux versions de données est renvoyé pour chaque colonne.

filter

bytes

Non

Expression de la condition de filtre. L'expression de la condition de filtre est sérialisée sous forme de données binaires à l'aide de Protobuf. Pour plus d'informations, consultez Filter.

start_column

string

Non

Colonne à partir de laquelle l'opération de lecture débute dans la ligne. Ce paramètre sert à lire des colonnes larges. Les colonnes sont triées par ordre alphabétique selon leur nom. La réponse contient la colonne de début spécifiée.

Si une table contient les colonnes a, b et c et que la valeur de start_column est b, l'opération de lecture commence à partir de la colonne b et les colonnes b et c sont renvoyées.

end_column

string

Non

Colonne à laquelle l'opération de lecture se termine. La réponse ne contient pas la colonne de fin spécifiée. Les colonnes sont triées par ordre alphabétique selon leur nom.

Exemple : si une table contient les colonnes a, b et c et que la valeur de end_column est b, l'opération de lecture s'arrête à la colonne b et seule la colonne a est renvoyée.

token

bytes

Non

Position à laquelle la prochaine opération de lecture débute dans la colonne large. Ce paramètre n'est pas disponible.

transaction_id

string

Non

ID de la transaction locale. Ce paramètre est requis si vous utilisez la fonctionnalité de transaction locale pour lire des données.

Syntaxe de la réponse

message GetRowResponse {
    required ConsumedCapacity consumed = 1;
    required bytes row = 2; // The data is encoded as binary data in the PlainBuffer format.
    optional bytes next_token = 3;
}

Paramètre

Type

Description

consumed

ConsumedCapacity

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

row

bytes

Données lues depuis la ligne. Si la ligne demandée n'existe pas, aucune donnée n'est renvoyée.

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

next_token

bytes

Jeton renvoyé si le nombre de colonnes dans une ligne de données dépasse 128 lors d'une requête.

Utiliser les SDK Tablestore

Utilisez les SDK Tablestore suivants pour lire une ligne de données :

Consommation de CU

  • Si la ligne demandée n'existe pas, une unité de capacité (CU) de lecture est consommée.

  • Si la ligne demandée existe, le nombre d'unités de capacité de lecture consommées est arrondi à l'entier supérieur à partir de la valeur calculée à l'aide de la formule suivante : Nombre d'unités de capacité de lecture consommées = (Taille des données dans toutes les colonnes de clé primaire de la ligne + Taille des données dans les colonnes d'attribut lues) / 4 Ko. Pour plus d'informations sur le calcul de la taille des données, consultez Présentation de la facturation.

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

  • Si un code d'état HTTP 5xx est renvoyé, indiquant qu'une erreur interne s'est produite, l'opération ne consomme pas d'unités de capacité. Si d'autres erreurs sont renvoyées, une unité de capacité de lecture est consommée.