MYSQLは、ショッピングカートに追加する際に重複追加を防ぐためのサンプルコードを実装します。

MYSQLは、ショッピングカートに追加する際に重複追加を防ぐためのサンプルコードを実装します。

序文

最近、仕事の都合で、APP ショッピングカートの注文支払いに取り組んでいました。テスト中にバグが見つかりました。すぐに「カートに追加」をクリックすると、同じ商品がショッピングカートに 2 回表示されました。

ショッピングカートに追加するときには、2 つの手順があります。最初の手順は、ショッピングカートに追加する商品がすでにショッピングカートにあるかどうかを判断することです。ある場合は、元の数量に 1 つ追加します。ない場合は、再度追加します。

2 つのステップはアトミック操作ではないため、マルチスレッドのセキュリティ問題があります。以下では詳しく説明しません。エディターに従って詳細な解決プロセスを見てみましょう。役に立つと思います。

MySQLの挿入にはより高度な操作があります

サンプルコード:

t_xs_shopping_cartに挿入(
 ユーザーID、
 ショップID、
 商品ID、
 量
)
価値観 
 (71, 67, 140201057403511024, 1) 重複キー更新の場合、数量 = 数量 + 1

ユニークキー制約が有効になると、数量を1増やす更新文が実行される。

要約する

上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に少しでもお役に立てれば幸いです。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM をご愛顧いただき、ありがとうございます。

以下もご興味があるかもしれません:
  • MySQLテーブルにタイムスタンプを追加するいくつかの方法
  • MySQLにインデックスを追加する方法
  • MySQL でストアド プロシージャを作成し、ループでレコードを追加する方法
  • テーブルの作成、フィールドの追加、フィールドの変更、インデックスの追加によく使用される MySQL の SQL 文の概要
  • SQL でテーブルにフィールドとコメントを追加する方法

<<:  2時間のDocker入門チュートリアル

>>:  ffmpeg コマンドラインを使用してビデオを変換するためのサンプルコード

推薦する

MySQL ルート パスワードをリセットするときに発生する「不明な列 'password'」問題を解決する方法

夜にMACの電源を入れたところ、突然ルートアカウントがMySQLに正常にログインできなくなったため、...

JavaScriptにおけるこれの深い理解

Jsでのこれの深い理解JavaScriptスコープはstatic scopeスコープですが、 Jsの...

Ubuntu Server のターミナルのウェルカム メッセージで広告を無効にする方法

最新の Ubuntu Server バージョンを使用している場合、ようこそメッセージに、Ubuntu...

Vuex ステートマシンの簡単な理解とサンプルアプリケーション

目次1. 概念の素早い理解: 1. コンポーネント間でデータを共有する方法: 2. vuex とは何...

CentOS 7 で PHP 5.4 を 5.6 にアップグレードする方法の簡単な分析

1.ターミナルに入ったらPHPのバージョンを確認するphp -v出力は次のようになります。 PHP ...

CSS3 はクールな 3D 回転遠近法効果を実現します

CSS3はクールな3D回転パースペクティブを実現します3D アニメーション効果はますます人気が高まっ...

Angular 依存性注入の説明

目次概要1. 依存性注入2. Angularの依存性注入フレームワーク概要依存性注入: デザインパタ...

vuex データの永続化のための 2 つの実装ソリューション

目次ビジネス要件:解決策 1: vuex-persistedstate解決策2: vuex-pers...

Linux でディスクをマウントし、起動時に自動的にマウントするように設定する方法

皆さんの時間は貴重だと承知しているので、プロセス コマンドを直接書き留めておきます。設定できます。原...

MySQL 5.7.21 のインストールと設定のチュートリアル

mysql5.7.21の簡単なインストール構成は次のとおりです。 1. MySQLのインストール1....

HTML テーブル マークアップ チュートリアル (4): 境界線の色属性 BORDERCOLOR

テーブルを美しくするために、テーブルにさまざまな境界線の色を設定できます。基本的な構文<テーブ...

WeChat 8.0の爆発的な特殊効果を実現するために300行以上のCSSコードが必要

WeChat 8.0 アップデートの主な特徴は、アニメーション絵文字のサポートです。送信するメッセー...

Vueページジャンプの実装方法

1. this.$router.push() 1. ビュー <テンプレート> <d...

CSSは左固定と右適応のレイアウト方法を実現します

1. フローティングレイアウト1. 最初に固定幅の div をフロートさせます。ドキュメントフローか...

CSS3 疑似クラスセレクターの簡単なレビュー

序文CSS がフロントエンド開発の基本的なスキルであるならば、「セレクター」は基礎中の基礎です。これ...