Maison > base de données > tutoriel mysql > Implémentation MYSQL d'exemples de code pour éviter la duplication de l'ajout de paniers

Implémentation MYSQL d'exemples de code pour éviter la duplication de l'ajout de paniers

黄舟
Libérer: 2017-09-21 10:53:36
original
1753 Les gens l'ont consulté

La chose la plus importante à prendre en compte lors de l'insertion de données dans MySQL est d'éviter l'ajout répété de données. L'article suivant vous présente principalement les informations pertinentes sur la façon dont MYSQL empêche l'ajout répété lors de l'ajout d'un panier. Le code est présenté de manière très détaillée. Les amis qui en ont besoin peuvent s'y référer.

Avant-propos

Récemment, pour des raisons professionnelles, je travaillais sur le paiement des commandes de panier APP. Un bug a été soulevé par le testeur, Lorsque le clic pour ajouter au panier était relativement rapide, le même produit apparaissait deux fois dans le panier

Car lors de l'ajout au panier, il y a deux étapes. La première étape consiste d'abord à déterminer si. à ajouter au panier. Vérifiez si le produit dans le panier est déjà dans le panier. Si c'est le cas, ajoutez-en un à la quantité d'origine. S'il n'y est pas, rebranchez-le

Parce que le. deux étapes ne sont pas des opérations atomiques, semble-t-il. Il n'y a pas grand chose à dire sur les problèmes de sécurité multithread. Venez suivre l'éditeur pour voir le processus de solution détaillé.

L'insertion MySQL a une opération plus avancée

Exemple de code :


INSERT INTO t_xs_shopping_cart (
 user_id,
 shop_id,
 commodity_id,
 quantity
)
VALUES 
 (71, 67, 140201057403511024, 1) ON DUPLICATE KEY UPDATE quantity = quantity + 1
Copier après la connexion

Lorsque la contrainte de clé unique prendra effet, l'instruction de mise à jour sera exécutée et la quantité sera augmentée de 1

Résumé

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!

Étiquettes associées:
source:php.cn
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