MySQLは独立した書き込み分離を設定します。コードに次のものを書くと問題が発生する可能性があります //最初に入力します this.insert(obj); // 再度クエリを実行します。Object res = this.selectById(obj.getId()); 解像度: null; オンラインでの落とし穴: 読み取りと書き込みの分離を行った後、メソッドを再利用して ID のみを渡すシナリオがあります。後続の処理のために、データベース内のオブジェクトを直接見つけることができます。その結果、見つけることができません。さまざまなトランザクション分離レベルがチェックされました。最終的に、読み取りと書き込みの分離の問題であることが判明したため、アイデアを変更して実装します。 追加知識: MySQL INSERT挿入条件判定:存在しない場合は挿入する 多くの場合、SQL でバッチ挿入を実行する必要があり、レコードが存在しない場合は挿入し、存在する場合は挿入しないことが求められます。 INSERT ステートメントを使用するのはいかがでしょうか? 通常の INSERT 挿入では、重複レコードが挿入されないようにするには、特定のフィールドに対してのみ一意制約を作成できます。 一意の制約を作成せず、1 つの INSERT INTO ステートメントだけで実現できるソリューションはありますか? 回答: INSERT INTO IF EXISTS を使用します。具体的な構文は次のとおりです。 テーブルに挿入(フィールド1、フィールド2、フィールドn) 'フィールド1'、'フィールド2'、'フィールドn' を選択 デュアルから WHERE NOT EXISTS(SELECT フィールド FROM テーブル WHERE フィールド = ?) 例: (order_id、operator、oper_date、memo) に INSERT INTO します。 '3'、'onion3'、'2017-11-28'、'テスト3' を選択 DUALより where not exists(where operator='onion3' and memo = '测试3' から order_id を選択); MySQLの読み取り/書き込み分離により挿入後にデータを選択できない問題を解決する上記の記事は、編集者が皆さんと共有する内容のすべてです。 皆さんの参考になれば幸いです。また、123WORDPRESS.COMを応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: docker run後、ステータスは常にExitedになります
>>: モバイル端末のジャンプ問題を解決する(CSS遷移、ターゲット疑似クラス)
Promise は、ES6 で導入された非同期プログラミングのための新しいソリューションです。 Pr...
ssh は私が最も頻繁に使用する 2 つのコマンドライン ツールのうちの 1 つです (もう 1 つ...
Python プログラムを書き、Mysql ライブラリを集中的に操作したためです。データ量が多くない...
まず、top のいくつかのフィールドの意味を紹介します。 VIRT:仮想メモリ使用量1. プロセスが...
環境準備:複数のコンテナに基づいてホストに lnmp をデプロイします。 nginx サービス: 1...
次のグラフは、100 個の異なる要素で iframe を作成するのにどれくらいの時間がかかるかを示し...
目次Vueプロジェクトのパッケージ化、起動、最適化Vueプロジェクトのパッケージ化プロジェクトホステ...
目次1. 背景2. ローカルカスタム指示3. グローバルカスタム指示4.1 カスタムコマンドフック関...
注意: 計画、設計、開発のいずれの場合でも、これらの間違いは避けなければなりません。 1. ナビゲー...
Mac OS X で TAR.GZ から MySQL 5.7 をインストールする MySQL 5.6...
目次0x0 はじめに0x1 RBAC 実装0x2 クレームベースの承認0x3 統合 CASL 0x4...
VMWareでUbuntuを再起動した後、インターネットにアクセスできなくなる問題を解決するには、次...
目次変換前:変換後: 0x0の基本0x1 「固定高さ」の仮想リストを実装する原理:最適化: 0x2 ...
目次1. 画像を取得する2. ブローカーサーバーを作成する3. ブローカーを作成する4. Rocke...
オーディオおよびビデオ ファイルを保存するためのディスク寿命を延ばすには、ディスクをフォーマットする...