MySQL implementiert Beispielcode, um doppelte Hinzufügungen beim Hinzufügen eines Einkaufswagens zu verhindern

MySQL implementiert Beispielcode, um doppelte Hinzufügungen beim Hinzufügen eines Einkaufswagens zu verhindern

Vorwort

Vor kurzem habe ich aus beruflichen Gründen an der Bezahlung von Bestellungen im Warenkorb der APP gearbeitet. Beim Testen wurde ein Fehler festgestellt. Als ich schnell auf „In den Warenkorb“ klickte, erschien dasselbe Produkt zweimal im Warenkorb.

Denn beim Hinzufügen in den Warenkorb gibt es zwei Schritte. Im ersten Schritt wird festgestellt, ob das in den Warenkorb zu legende Produkt bereits im Warenkorb liegt. Wenn ja, wird zur ursprünglichen Menge eins hinzugefügt. Wenn nicht, wird es erneut hinzugefügt.

Da es sich bei den beiden Schritten nicht um atomare Operationen handelt, gibt es ein Multithread-Sicherheitsproblem. Ich werde im Folgenden nicht viel dazu sagen. Folgen wir dem Editor, um den detaillierten Lösungsprozess anzusehen, der Ihnen eine gewisse Hilfe sein wird.

MySQL Insert verfügt über eine erweiterte Operation

Beispielcode:

INSERT INTO t_xs_shopping_cart (
 Benutzer-ID,
 Shop-ID,
 Waren-ID,
 Menge
)
WERTE 
 (71, 67, 140201057403511024, 1) BEIM UPDATE DES DUPLIZIERTEN SCHLÜSSELS Menge = Menge + 1

Wenn die eindeutige Schlüsselbeschränkung wirksam wird, wird die Update-Anweisung ausgeführt, um die Menge um 1 zu erhöhen

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels Ihnen bei Ihrem Studium oder Ihrer Arbeit helfen kann. Wenn Sie Fragen haben, können Sie eine Nachricht hinterlassen. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM.

Das könnte Sie auch interessieren:
  • Mehrere Möglichkeiten zum Hinzufügen von Zeitstempeln in MySQL-Tabellen
  • So fügen Sie MySQL Indizes hinzu
  • So erstellen Sie eine gespeicherte Prozedur in MySQL und fügen Datensätze in einer Schleife hinzu
  • Zusammenfassung der in MySQL häufig verwendeten SQL-Anweisungen zum Erstellen von Tabellen, Hinzufügen von Feldern, Ändern von Feldern und Hinzufügen von Indizes
  • So fügen Sie einer Tabelle in SQL Felder und Kommentare hinzu

<<:  Was ist dies in einer Punkt-für-Punkt-Reihe von JavaScript?

>>:  Beispielcode zum Konvertieren von Videos mit der ffmpeg-Befehlszeile

Artikel empfehlen

Beispielcode zum Konvertieren von HTML-Tabellendaten in das JSON-Format

Die Javascript-Funktion zum Konvertieren von <t...

So verwenden Sie einen Docker-Container für den Zugriff auf das Host-Netzwerk

Vor Kurzem wurde ein System bereitgestellt, das n...

So konfigurieren Sie den Runner-Container in Docker

1. Erstellen Sie einen Runner-Container mk@mk-pc:...

Pessimistisches Sperren und optimistisches Sperren in MySQL

In relationalen Datenbanken sind pessimistisches ...

Detaillierte Erklärung zur Verwendung der Funktion find_in_set() in MySQL

Betrachten wir zunächst ein Beispiel: In der Arti...

WeChat-Applet implementiert ein einfaches Würfelspiel

In diesem Artikel wird der spezifische Code des W...

Was ist dies in einer Punkt-für-Punkt-Reihe von JavaScript?

Verstehe das Vielleicht haben Sie this in anderen...

Warum verwendet der MySQL-Datenbankindex den B+-Baum?

Bevor wir weiter analysieren, warum der MySQL-Dat...

Beispielcode zur Implementierung eines Waben-/Sechseckatlas mit CSS

Ich weiß nicht warum, aber UI gestaltet gerne Wab...

Lassen Sie IE6, IE7, IE8 CSS3-abgerundete Ecken und Schattenstile unterstützen

Ich möchte eine Seite mit CSS3-abgerundeten Ecken...

Detaillierte Erläuterung des Prozesses der Zabbix-Überwachung von SQLServer

Werfen wir einen Blick auf die Zabbix-Überwachung...

Detaillierte Erläuterung der sechs gängigen Einschränkungstypen in MySQL

Inhaltsverzeichnis Vorwort 1.nichtnull 2. einziga...