インライン・メソッドの概要

インライン・プログラミング・スタイルを使用する場合、SQL 照会、UPDATE ステートメント、または CALL ステートメントをアプリケーション内にインラインでコーディングすることができます。 メソッドの呼び出しでは、SQL ステートメントはパラメーターとして示されます。

インライン・メソッドを使用することの利点は以下のとおりです。

すべてのインライン・メソッドは Data インターフェースに定義されています。これは、データベースの照会および更新、ストアード・プロシージャーの実行、Collection および Iterator オブジェクトの照会、およびトランザクションの管理を行うためのメソッドを定義します。

Data インターフェースの照会メソッドのタイプ

照会メソッドは 2 つのグループに分類できます。

個々の Bean またはスカラー・オブジェクトとして、あるいは Array、List、Iterator にグループ化される Bean またはスカラー・オブジェクトとして、結果を戻す照会メソッド
戻り Bean のクラスはパラメーターとして渡されます。 以下は、いくつかの例です。
Employee employee = data.queryFirst("SELECT * FROM HRDEPT.EMP WHERE lastname = ?1", 
     Employee.class, lastName);

List<Employee> employees = data.queryList("SELECT * FROM HRDEPT.EMP",  Employee.class);

Employee[] employees = data.queryArray("SELECT * FROM HRDEPT.EMP", Employee.class);

Iterator<Employee> employees = data.queryIterator("SELECT * FROM HRDEPT.EMP", 
     Employee.class);
個々の Map オブジェクトとして、または Array、List、または Iterator にグループ化される Map オブジェクトとして、結果を戻す照会メソッド
Map では、列ラベルは String キー、列値は Object 値になります。以下は、2 つの例です。
Map<String,Object> employee = data.queryFirst("SELECT * FROM HRDEPT.EMP WHERE lastname=?1", 
     lastName);

List<Map<String,Object>> employees = data.queryList("SELECT * FROM  HRDEPT.EMP"
     + "WHERE lastname LIKE ?", "Br%");

挿入、更新、および削除

Data.update() メソッドは単一の操作に使用します。

Employee newEmployee =
   new Employee("000010", "CHRISTINE", "I", "HAAS", "A00", 
      "3978", new java.sql.Date(System.currentTimeMillis()));

int rowsAffected = data.update("insert into hrdept.emp (id, firstname, midinit, lastname, deptno," 
     + "phoneext, hiredate)  VALUES (:id, :firstName, :midInit, :lastName, :deptNo, :phoneExt, :hireDate)", 
     newEmployee);

Employee employee =
   new Employee("000010", "CHRISTINE", "I", "HAAS", "A00", 
      "3978", new java.sql.Date(System.currentTimeMillis()));

int rowsAffected = data.update("update hrdept.emp set firstname = :firstName, midinit = :midInit," 
     + "lastname = :lastName, deptno = :deptNo, phoneext = :phoneExt, hiredate = :hireDate WHERE id = :id", employee);

int rowsAffected = data.update("delete from hrderp.emp where id=?1", id);

更新操作を複数回実行するには、Data.updateMany() メソッドを使用します。


フィードバック