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遷移、ターゲット疑似クラス)
プライベート変数のクロージャ実装プライベート変数は共有されないnew キーワードにより、 perso...
目次1. クライアントとサーバー間の通信方法2. クエリキャッシュ3. クエリ最適化処理4. クエリ...
序文Oracle や SQL Server などのデータベースには、ストレージ エンジンが 1 つだ...
vsftpd の概要vsftpd は「very secure FTP daemon」の略称で、セキ...
問題の説明: ユーザーは、テーブルに「違反」という単語を含むフィールドが時々表示されることを要求して...
目次1. コンポーネントの登録2. コンポーネントの使用3. 父から息子へ4. 息子から父へ5. ス...
ほとんどのアプリケーション シナリオでは、緊急時に備えて重要なデータをバックアップし、安全な場所に保...
目次序文1. Tomcat クラスローダー構造図: 2. Tomcat のクラスロードプロセスの説明...
具体的なコードは次のとおりです。 <a href="#"> <...
1. 何ですかRefs 、コンピューターでは Resilient File System (ReF...
目的: MySQL 集計関数のネストされた使用集計関数は直接ネストできません。例: max(coun...
今日、最終プロジェクトに取り組み始めましたが、今年はMySQLデータベースを使用したため、Navic...
console.log( [] == ![] ) // 真 console.log( {} == ...
派生テーブルについてメイン クエリに派生テーブルが含まれている場合、または SELECT ステートメ...
1. Reactでクラス宣言する際のヒント 上記のように、Child クラスは class キーワー...