Résumé des fonctionnalités du service de table

L’API REST du service de table est conforme à la spécification du protocole OData, à quelques différences près, comme décrit dans les sections suivantes.

Extensions du service de Table

Restrictions du service de Table

Extensions du service de table

Le service de Table étend la fonctionnalité de OData de la façon suivante.

autorisation shared key, shared key Lite et Azure Active Directory

Le service de table requiert que chaque demande soit autorisée. les autorisations shared key, shared key Lite et Azure Active Directory (Azure AD) sont prises en charge. Azure AD autorisation est plus sécurisée et est recommandée pour les demandes effectuées sur le service de table à l’aide de l’API REST.

pour plus d’informations sur l’autorisation des demandes, consultez autoriser les demandes à stockage Azure.

Jetons de continuation pour la pagination de requête

Une requête auprès du service de Table peut retourner un maximum de 1 000 éléments à la fois et peut s'exécuter pendant cinq secondes au maximum. Si le jeu de résultats contient plus de 1 000 éléments ou si la requête ne s'est pas terminée dans les cinq secondes, la réponse inclut les en-têtes qui fournissent au développeur des jetons de continuation à utiliser pour continuer la requête au niveau de l'élément suivant dans le jeu de résultats. Les en-têtes de jeton de continuation peuvent être retournés pour une opération de tables de requête ou une opération d' entités de requête .

Notez que la durée totale allouée à la demande pour planifier et gérer la requête est de 30 secondes, y compris les cinq secondes pour l'exécution de la requête.

Pour plus d’informations sur les jetons de continuation, consultez délai de requête et pagination.

Propriétés système de clé primaire

Chaque entité du service de Table a deux propriétés de clé : la propriété PartitionKey et la propriété RowKey. Ces propriétés constituent la clé primaire de la table et identifient de façon unique chaque entité dans la table.

Ces deux propriétés requièrent des valeurs de chaîne. Il est de la responsabilité du développeur de fournir des valeurs pour ces propriétés lorsqu'une nouvelle entité est insérée, et de les inclure dans n'importe quelle mise à jour ou opération de suppression dans une entité.

Pour plus d’informations sur ces propriétés de clé obligatoires, consultez Présentation du modèle de données du service de table.

Propriété système Timestamp

Chaque entité du service de Table a une propriété système Timestamp. La propriété Timestamp est une valeur DateTime gérée côté serveur pour enregistrer l'heure de dernière modification d'une entité. Le service de Table utilise la propriété Timestamp en interne pour fournir un accès concurrentiel optimiste. La valeur Timestamp est une valeur à croissance monotone, ce qui signifie que chaque fois que l'entité est modifiée, la valeur Timestamp augmente de cette entité. Cette propriété ne doit pas être utilisée pour les opérations d'insertion ou de mise à jour (la valeur sera ignorée).

Pour plus d’informations sur la Timestamp propriété, consultez Présentation du modèle de données du service de table.

Opérations de traitement par lots

Le service de Table prend en charge les transactions par lots sur les entités qui se trouvent dans la même table et appartiennent au même groupe de partition, c'est-à-dire qui ont la même valeur PartitionKey. Cela permet la prise en charge de plusieurs opérations d'insertion, de mise à jour, de fusion et de suppression dans une seule transaction atomique. Le service de table prend en charge un sous-ensemble des fonctionnalités fournies par le protocole OData.

Pour plus d’informations sur les opérations de traitement par lots, consultez exécution de transactions de groupe d’entités.

Restrictions du service de table

Le service de Table limite certaines fonctionnalités fournies par OData.

Propriété Credentials

Le service de table ne prend pas en charge l’utilisation de la propriété Credentials de la classe DataServiceContext pour autoriser une demande. Au lieu de cela, vous devez autoriser une demande auprès du service de table en ajoutant un Authorization en-tête à la demande. pour plus d’informations, consultez autoriser les demandes à stockage Azure.

Types de propriétés

Tous les types de propriétés pris en charge par OData ne sont pas pris en charge par le service de Table. Pour obtenir la liste des types de propriété pris en charge, consultez comprendre le modèle de données du service de table.

Le service de Table ne prend pas actuellement en charge les liens entre les tables. Les liens sont des relations associatives entre les données.

Opérations sur les propriétés Select

La projection fait référence à l'interrogation d'un sous-ensemble de propriétés d'une entité ou de plusieurs entités. Elle est analogue à la sélection d'un sous-ensemble de colonnes ou de propriétés d'une table lors de l'interrogation dans LINQ. La projection réduit la quantité de données devant être retournées par une requête en indiquant que seules certaines propriétés doivent être retournées dans la réponse. La projection est prise en charge dans la version du 18/08/2011 des services de stockage Azure. Pour plus d’informations, reportez-vous à interroger des entités, écrire des requêtes LINQ sur le service de tableet OData : sélectionnez l’Option de requête système ($Select).

Opérateurs de requête LINQ

Le service de Table prend en charge les requêtes LINQ (Language Integrated Query). Seuls les opérateurs de requête LINQ sont pris en charge pour une utilisation avec le service de Table :

  • From

  • Where

  • Take

Pour plus d’informations, consultez opérateurs de requête pris en charge pour le service de table.

Opérateurs de comparaison LINQ

Le service de Table prend en charge l'utilisation d'un sous-ensemble d'opérateurs de comparaison fournis par LINQ. Pour plus d’informations, consultez interrogation de tables et d’entités et écriture de requêtes LINQ sur le service de table.

Méthode GetMetadataURI

Le service de table prend en charge la méthode GetMetadataURI de la classe DataServiceContext , mais il ne retourne pas d’informations de schéma au-delà des trois propriétés de schéma fixes. Ces propriétés sont PartitionKey, RowKey et Timestamp.

Formats de charge utile

OData prend en charge l’envoi des charges utiles au format JSON. Le service de Table Azure prend en charge le format JSON OData dans la version d'API du 15/08/2013, avec la version de service de données OData définie à 3.0 ; les versions antérieures ne prennent pas en charge le format JSON.

Les charges utiles Atom sont prises en charge dans toutes les versions antérieures à 2015-12-11. La version 2015-12-11 et les versions ultérieures prennent uniquement en charge les charges utiles JSON.

Notes

JSON est le format de charge utile recommandé, et est le seul format pris en charge pour les versions 2015-12-11 et ultérieures.

Pour plus d’informations, consultez format de charge utile pour les opérations de service de table et définition des en-têtes de version du service de données OData.

Voir aussi

API REST du service Table