Maison > développement back-end > Golang > Comment spanner.Mutation comprend quelle ligne mettre à jour

Comment spanner.Mutation comprend quelle ligne mettre à jour

PHPz
Libérer: 2024-02-13 23:30:09
avant
1380 Les gens l'ont consulté

spanner.Mutation 如何理解要更新哪一行

L'éditeur PHP Zimo est là pour vous présenter comment comprendre quelle ligne mettre à jour spanner.Mutation. Lorsque vous utilisez spanner.Mutation pour la mise à jour des données, nous devons spécifier les lignes et les colonnes à mettre à jour. Pour mettre à jour une ligne spécifique, vous pouvez utiliser spanner.KeyRange pour spécifier une plage de lignes. Si vous n'avez besoin de mettre à jour qu'une seule ligne, vous pouvez utiliser spanner.KeyRange.withPrefix pour spécifier le préfixe de la ligne. Alternativement, spanner.KeySet peut être utilisé pour spécifier l'ensemble de lignes à mettre à jour. Grâce à ces méthodes, nous pouvons clairement comprendre quelle ligne de données spanner.Mutation souhaite mettre à jour.

Contenu de la question

Extrait de la documentation :

65bed0b31ec07

Comment Spanner comprend-il quelle ligne mettre à jour ? J'ai trouvé qu'il manquait la clause where. Utilise-t-il automatiquement certains champs comme clés (par exemple user_id = "..." implicite) ? where 子句。它是否自动使用某些字段作为键(例如隐式 user_id = "...")?

解决方法

Cloud Spanner 将自动使用突变正在更新的表的主键。这意味着您必须在 Update 突变中包含主键的所有列。因此,一个 Update 突变也只会更新一行(如果该行不存在,它将返回 NOT_FOUND

Solution de contournement

Cloud Spanner mutera automatiquement la clé primaire de la table en cours de mise à jour. Cela signifie que vous devez inclure toutes les colonnes de la clé primaire dans la mutation Update. Par conséquent, une mutation Update ne mettra à jour qu'une seule ligne (si la ligne n'existe pas, elle renverra une erreur NOT_FOUND).

Cela signifie également que la valeur de la clé primaire de la ligne ne peut pas être mise à jour. A l’inverse, si vous souhaitez « modifier » la valeur de la clé primaire, vous devez supprimer la ligne et insérer une nouvelle ligne.

Voir 🎜https://cloud.google. com/spanner/docs/reference/rpc/google.spanner.v1#mutation🎜 pour en savoir plus sur le fonctionnement des mutations. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal