Lorsque vous définissez une colonne de clé primaire (autre que la clé de partition) comme colonne à incrémentation automatique, il n'est pas nécessaire de fournir une valeur pour celle-ci lors de l'écriture des données. Tablestore génère automatiquement une valeur unique pour cette colonne, qui augmente strictement au sein de chaque clé de partition.
Fonctionnalités
Une colonne de clé primaire à incrémentation automatique présente les caractéristiques suivantes :
Les valeurs d'une colonne à incrémentation automatique sont uniques et strictement croissantes au sein d'une clé de partition, mais ne sont pas nécessairement consécutives.
Le type de données d'une colonne à incrémentation automatique est un entier signé 64 bits.
Les colonnes à incrémentation automatique sont définies au niveau de la table de données. Une instance peut contenir des tables de données avec ou sans colonnes à incrémentation automatique.
Cette fonctionnalité n'affecte pas les règles de mise à jour conditionnelle. Pour plus d'informations, consultez la rubrique Mise à jour conditionnelle.
Notes d'utilisation
Chaque table de données peut comporter au maximum une colonne de clé primaire à incrémentation automatique. Une clé de partition ne peut pas être définie comme colonne à incrémentation automatique.
Vous ne pouvez définir une colonne à incrémentation automatique qu'à la création d'une table de données. Il est impossible d'en ajouter une à une table existante.
Seule une colonne de clé primaire de type entier peut être définie comme colonne à incrémentation automatique. La valeur générée par le système pour une colonne à incrémentation automatique est un entier signé 64 bits.
Il est interdit de définir une colonne d'attribut comme colonne à incrémentation automatique.
La fonctionnalité de colonne de clé primaire à incrémentation automatique et la fonctionnalité de transaction locale sont incompatibles.
Lors de l'écriture dans une table dotée d'une colonne de clé primaire à incrémentation automatique, vous devez récupérer et stocker la valeur générée par la colonne pour les mises à jour ou lectures ultérieures.
Opérations API
Ce tableau décrit les opérations API liées à la fonctionnalité de colonne de clé primaire à incrémentation automatique.
|
API |
Description |
|
Pour utiliser cette fonctionnalité, vous devez définir une colonne de clé primaire (autre que la clé de partition) comme colonne à incrémentation automatique lors de la création de la table de données. |
|
|
Une fois la table de données créée, vous ne pouvez pas utiliser l'opération API UpdateTable pour redéfinir une colonne de clé primaire comme colonne à incrémentation automatique. |
|
|
Lors de l'écriture des données, il n'est pas nécessaire de spécifier une valeur pour la colonne à incrémentation automatique, car Tablestore en génère une automatiquement. Pour obtenir la clé primaire complète, définissez le paramètre ReturnType sur RT_PK. Vous pouvez ensuite utiliser la clé primaire pour interroger les données via l'opération API GetRow. Important
Si vous devez mettre à jour une ligne sans avoir stocké sa valeur de clé primaire à incrémentation automatique, utilisez d'abord l'opération API GetRange pour récupérer la clé primaire complète avant d'effectuer la mise à jour. |
|
|
L'opération API GetRow requiert une clé primaire complète. Vous pouvez obtenir la clé primaire complète en définissant le paramètre ReturnType sur RT_PK dans votre requête PutRow, UpdateRow ou BatchWriteRow. Important
Si vous ne stockez pas la valeur de la colonne de clé primaire à incrémentation automatique lors de l'écriture des données, vous pouvez toujours lire une plage de données en vous basant sur la première colonne de clé primaire. Pour plus d'informations, consultez la rubrique Lire une plage de données. |
|
Utilisation
Console
CLI
SDKs
Facturation
Cette fonctionnalité n'affecte pas les règles de facturation existantes. Le renvoi des données de clé primaire ne consomme aucune unité de capacité de lecture supplémentaire.
