3.4.8. データベース更新
この章では、WebSQL テーブルオブジェクトの内容で、データベースへの登録/更新/削除を行う手順について説明します。
WebSQL テーブルオブジェクトのデータベース更新設定をする
WebSQL テーブルオブジェクトのデータベース更新設定を行います。
/* コンストラクタ */
public EmpPage(HttpServletRequest request,
        HttpServletResponse response) throws Exception {
  …
  // 更新対象スキーマ名
  tableEmp.setResolveTargetDBSchema("PUBLIC");
  // 更新対象テーブル名
  tableEmp.setResolveTargetDBTable("T_EMP");
  …
}

データベース更新設定する
(「 setResolveTargetDBSchemasetResolveTargetDBTable 」メソッド)

更新対象のスキーマ名、テーブル名を設定します。
ActionPage クラスにアクションメソッドを追加する
ActionPage クラスに画面から呼び出すアクションメソッドを追加します。
/* WebSQLテーブルオブジェクトの内容でデータベースを更新します。 */
public void saveRow() throws Exception {
    Connection conn = getConnection();
    try {
      // SQLを発行
      tableEmp.resolveChanges(conn);
      // コミット
      conn.commit();
    }
    catch (Exception x) {
      // ロールバック
      conn.rollback();
      // エラーメッセージを追加
      tableEmp.addErrorMessage(x.getLocalizedMessage());
    }
    finally {
      // コネクションのクローズ
      conn.close();
    }
  // 再表示
  show();
}

登録/更新/削除をする(「 resolveChanges 」メソッド)

INSERT 文、UPDATE 文、DELETE 文を自動生成して発行する。
HTML テンプレートに ActionPage 連携用の記述を追加する
アクションメソッドを呼び出す記述を追加します。
<!-- DB更新ボタンを配置 -->
<input type="button" value="DB更新" onclick="ls.exec('saveEmpList');" />
ページを表示する
ボタンをクリックして、フォームの内容がデータベースに正しく登録されることを確認します。