クラス SqlUpdate

実装されたすべてのインターフェース:
InitializingBean
既知の直属サブクラス
BatchSqlUpdate

public class SqlUpdate extends SqlOperation
SQL 更新を表す再利用可能な操作オブジェクト。

このクラスは、クエリオブジェクトの execute メソッドに類似した多数の update メソッドを提供します。

このクラスは具体的です。サブクラス化することもできますが(たとえば、カスタム更新メソッドを追加するため)、SQL を設定してパラメーターを宣言することにより、簡単にパラメーター化できます。

Spring Framework に同梱されているすべての RdbmsOperation クラスと同様に、SqlQuery インスタンスは初期化が完了した後はスレッドセーフです。つまり、setter メソッドを使用して構築および構成した後、複数のスレッドから安全に使用できます。

作成者:
Rod Johnson, Thomas Risberg, Juergen Hoeller
関連事項:
  • コンストラクターの詳細

    • SqlUpdate

      public SqlUpdate()
      JavaBean として使用できるコンストラクター。DataSource と SQL は、コンパイルして使用する前に提供する必要があります。
      関連事項:
    • SqlUpdate

      public SqlUpdate(DataSourceSE ds, StringSE sql)
      指定された DataSource および SQL で更新オブジェクトを構築します。
      パラメーター:
      ds - 接続を取得するために使用する DataSource
      sql - 実行する SQL ステートメント
    • SqlUpdate

      public SqlUpdate(DataSourceSE ds, StringSE sql, int[] types)
      指定された DataSource、SQL、匿名パラメーターを使用して更新オブジェクトを作成します。
      パラメーター:
      ds - 接続を取得するために使用する DataSource
      sql - 実行する SQL ステートメント
      types - java.sql.Types クラスで定義されているパラメーターの SQL 型
      関連事項:
    • SqlUpdate

      public SqlUpdate(DataSourceSE ds, StringSE sql, int[] types, int maxRowsAffected)
      特定の DataSource、SQL、匿名パラメーターを使用して、影響を受ける可能性のある最大行数を指定して、更新オブジェクトを作成します。
      パラメーター:
      ds - 接続を取得するために使用する DataSource
      sql - 実行する SQL ステートメント
      types - java.sql.Types クラスで定義されているパラメーターの SQL 型
      maxRowsAffected - 更新の影響を受ける可能性のある最大行数
      関連事項:
  • メソッドの詳細

    • setMaxRowsAffected

      public void setMaxRowsAffected(int maxRowsAffected)
      この更新の影響を受ける可能性のある最大行数を設定します。デフォルト値は 0 で、影響を受ける行の数を制限しません。
      パラメーター:
      maxRowsAffected - エラーを考慮したこのクラスの更新メソッドなしで、この更新によって影響を受ける可能性のある最大行数
    • setRequiredRowsAffected

      public void setRequiredRowsAffected(int requiredRowsAffected)
      この更新の影響を受ける必要がある行の正確な数を設定します。デフォルト値は 0 で、任意の数の行に影響を与えることができます。

      これは、影響を受ける可能性のある最大行数を設定する代わりの方法です。

      パラメーター:
      requiredRowsAffected - エラーを考慮したこのクラスの更新メソッドなしで、この更新の影響を受ける必要がある行の正確な数
    • checkRowsAffected

      protected void checkRowsAffected(int rowsAffected) throws JdbcUpdateAffectedIncorrectNumberOfRowsException
      影響を受ける行の指定された数を、指定された最大数または必要な数と照合します。
      パラメーター:
      rowsAffected - 影響を受けた行の数
      例外:
      JdbcUpdateAffectedIncorrectNumberOfRowsException - 実際に影響を受ける行が範囲外の場合
      関連事項:
    • update

      public int update(ObjectSE... params) throws DataAccessException
      指定されたパラメーターの更新を実行する汎用メソッド。他のすべての更新メソッドは、このメソッドを呼び出します。
      パラメーター:
      params - パラメーターオブジェクトの配列
      戻り値:
      更新の影響を受ける行の数
      例外:
      DataAccessException
    • update

      public int update(ObjectSE[] params, KeyHolder generatedKeyHolder) throws DataAccessException
      引数を指定して更新を実行し、KeyHolder を使用して生成されたキーを取得するメソッド。
      パラメーター:
      params - パラメーターオブジェクトの配列
      generatedKeyHolder - 生成されたキーを保持する KeyHolder
      戻り値:
      更新の影響を受ける行の数
      例外:
      DataAccessException
    • update

      public int update() throws DataAccessException
      パラメーターなしで更新を実行するための便利なメソッド。
      例外:
      DataAccessException
    • update

      public int update(int p1) throws DataAccessException
      1 つの int 引数を指定して更新を実行する便利なメソッド。
      例外:
      DataAccessException
    • update

      public int update(int p1, int p2) throws DataAccessException
      2 つの int 引数を指定して更新を実行する便利なメソッド。
      例外:
      DataAccessException
    • update

      public int update(long p1) throws DataAccessException
      1 つの長い引数を指定して更新を実行する便利なメソッド。
      例外:
      DataAccessException
    • update

      public int update(long p1, long p2) throws DataAccessException
      2 つの長い引数を指定して更新を実行する便利なメソッド。
      例外:
      DataAccessException
    • update

      public int update(StringSE p) throws DataAccessException
      1 つの文字列引数を指定して更新を実行する便利なメソッド。
      例外:
      DataAccessException
    • update

      public int update(StringSE p1, StringSE p2) throws DataAccessException
      2 つの文字列引数を指定して更新を実行する便利なメソッド。
      例外:
      DataAccessException
    • updateByNamedParam

      public int updateByNamedParam(MapSE<StringSE,?> paramMap) throws DataAccessException
      名前付きパラメーターを指定して更新を実行する汎用メソッド。他のすべての更新メソッドは、このメソッドを呼び出します。
      パラメーター:
      paramMap - SQL ステートメントで指定された名前付きパラメーターと一致する、パラメーターオブジェクトからパラメーターオブジェクトへのマップ
      戻り値:
      更新の影響を受ける行の数
      例外:
      DataAccessException
    • updateByNamedParam

      public int updateByNamedParam(MapSE<StringSE,?> paramMap, KeyHolder generatedKeyHolder) throws DataAccessException
      引数を指定して更新を実行し、KeyHolder を使用して生成されたキーを取得するメソッド。
      パラメーター:
      paramMap - SQL ステートメントで指定された名前付きパラメーターと一致する、パラメーターオブジェクトからパラメーターオブジェクトへのマップ
      generatedKeyHolder - 生成されたキーを保持する KeyHolder
      戻り値:
      更新の影響を受ける行の数
      例外:
      DataAccessException