Mybatis mysqlの削除操作では、最初のデータメソッドのみを削除できます。

Mybatis mysqlの削除操作では、最初のデータメソッドのみを削除できます。

バグ

図のように、削除文とパラメータをデータベースにコピーして実行し、2つのデータを削除しようとしたのですが、バックグラウンド実行では1つのデータしか削除されませんでした。当時は戸惑いました。

 原因を分析する

原因を分析する

図に示すように、正しいパラメータ値は次のようになります。賢い学生は何が間違っているかわかるはずです。

問題を解決する

 問題を解決する

最初のコードは投稿しません。バグを解決するためのコードを直接投稿します。

Mybatisのコード

<!-- 一括削除 -->
  <削除 id="deleteByIds" パラメータタイプ="int[]">
     <![CDATA[
    p_customerから削除
    顧客IDが
    ]]>
    <foreach collection="array" item="arr" index="no" open="("
      セパレーター="," 閉じる=")">
      #{arr}
    </foreach>
  </削除>

コントローラ内のコード

/**
   * 削除と一括削除 */
  @RequestMapping(値 = "/del"、メソッド = RequestMethod.POST、生成 = { MediaType.APPLICATION_JSON_VALUE })
  パブリックResponseEntity<PCustomerVo> delete(@RequestParam String customerId) 例外をスローします {
    // 一括削除の ID を取得し、最後の "," を削除します
    顧客ID = 顧客ID.substring(0, 顧客ID.length()-1);
    文字列[] strarr=顧客ID.split(",");
    int[] arr = 新しい int[strarr.length];
    for(int i=0;i<strarr.length;i++){
      arr[i] = Integer.parseInt(str[i]);
    }
    pcustomerService.deletes(arr);
    新しいResponseEntity<>(HttpStatus.OK)を返します。
  }

要約する

以上が私がご紹介した内容です。mybatis mysql delete 操作では、最初のデータのみを削除できます。お役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

以下もご興味があるかもしれません:
  • Mybatis が 1 対多の関連クエリで 1 つのデータのみを表示する問題を解決する
  • mybatis plus ページングクエリにエントリ数があり、合計とページが両方ともゼロであるという問題を解決します
  • OracleとMybatisを組み合わせて表のトップ10データを実現
  • レコード数を照会するためのMybatisサンプルコード
  • クエリ数を制限するためのMybatis RowBounds実装コード
  • Mybatisバッチ挿入は成功した例の数を返します

<<:  Linux サービス管理の 2 つの方法、service と systemctl の詳細な説明

>>:  Vue プロジェクトは左スワイプ削除機能を実装します (完全なコード)

推薦する

Linux で実行可能ファイルを実行するときに「そのようなファイルまたはディレクトリはありません」というプロンプトが表示される場合の解決策

最近、Linux オペレーティング システムを使用して実行可能ファイルを実行していたところ、「そのよ...

Power Shell に vim 実装コード例を追加する方法

1. Vimの公式ウェブサイトにアクセスして、オペレーティングシステムに適した実行ファイルをダウンロ...

Dell R720 サーバーに Windows Server 2008 R2 をインストールする方法

注: この記事のすべての写真はインターネットから収集されたものであるため、DELL R720 サーバ...

MySQL 5.7.18 zip バージョンのインストール チュートリアル

MySQL の mysql 5.7.18 zip バージョンは、クリックして次のステップをクリックし...

LinuxシステムにDockerをインストールするプロセス

このブログでは、Docker をインストールするプロセスを簡単な手順で説明します。Docker のイ...

Linux Samba サーバーの超詳細なインストールと構成 (問題解決付き)

目次Samba サーバーの紹介Samba サーバー コンポーネントSamba サーバー関連の設定ファ...

React Router 5.1.0 はページジャンプナビゲーションを実装するために useHistory を使用します

目次1. withRouterコンポーネントを使用する2. ルートタグを使用するReactRoute...

CSSの複数条件の書き方の詳細説明:

:not疑似クラスセレクターは、式に一致しない要素をフィルタリングできます。例 テーブル tbod...

Linux netfilter/iptables の知識ポイントの詳細な説明

ネットフィルターNetfilter は、パケット フィルタリング、転送、およびアドレス変換 NAT ...

JDBC を MySQL 5.7 に接続する方法

1. まずMySQLとEclipseの環境を準備します。環境がセットアップされたら、Eclipseの...

MySQL 5.7 でルートパスワードを変更する方法に関するチュートリアル

バージョンアップデートにより、元のユーザーのパスワードフィールドがauthentication_st...

MySQL のインデックスの原理とクエリの最適化の詳細な説明

目次1. はじめに1. インデックスとは何ですか? 2. インデックスはなぜ必要なのでしょうか? 2...

WeChatアプレットコンポーネント開発:視覚的な映画座席選択機能

目次1. はじめに1. コンポーネントデータ2. コンポーネントページのレイアウト1. ロゴエリアの...

関連するプロパティのリストを含む HTML エリア イメージ ホットスポットの使用の概要

<area> タグは主にイメージマップで使用されます。イメージマップにアクティブ領域 (...

MySQL でテーブルデータをクリアする 2 つの方法とその違い

MySQL でデータを削除するには 2 つの方法があります。切り詰めは大まかな伐採の一種である削除は...