ページの先頭行へ戻る
Symfoware Server V12.1.x アプリケーション開発ガイド(JDBCドライバ編)
FUJITSU Software

3.11 行識別子(SQL ROWID)データを利用したデータ操作

操作手順

行識別子データを利用してデータの操作をする場合、以下の手順で行います。

この例では、スキーマ名“GENERAL”、表“EMPLOYEE”の情報を更新します。

備考) 行識別子は、24バイトで表されるByte配列データで構成されています。

記述例

行識別子データを利用してデータの更新をする記述例を以下に説明します。

Statement stmt = con.createStatement();                         (1)
ResultSet rs = stmt.executeQuery
       ("SELECT ROW_ID FROM GENERAL.EMPLOYEE WHERE NAME=lion"); (2)
RowId rowid = null;                                             (2)
while(rs.next())                                                (3)
{
    rowid = rs.getRowId(1);                                     (4)
}

PreparedStatement pstmt = con.prepareStatement
      ("UPDATE GENERAL.EMPLOYEE SET NAME=? WHERE ROW_ID=?");    (5)

pstmt.setString(1,"tiger");                                     (6)
pstmt.setRowId(2,rowid);                                        (6)

pstmt.executeUpdate();                                          (7)
rs.close();                                                     (8)
stmt.close();                                                   (8)
pstmt.close();                                                  (8)

con.commit();                                                   (9)

(1) SQL文を実行するためのオブジェクトの生成

(2) ResultSetオブジェクトの生成

(3) カーソルの位置づけ

(4) ResultSetオブジェクトからのデータ取得

(5) SQL文の準備

(6) パラメタへの値の設定

(7) SQL文の実行

(8) オブジェクトのクローズ

(9) トランザクションのコミット


以下に各項目の設定方法を示します。

SQL文を実行するためのオブジェクトの生成

ConnectionインタフェースのcreateStatementメソッドを使用し、Statementインタフェースのオブジェクトを生成します。

ResultSetオブジェクトの生成

StatementインタフェースのexecuteQueryメソッドを使用し、ResultSetオブジェクトを生成します。

カーソルの位置づけ

ResultSetインタフェースのnextメソッドを使用し、カーソルを現在の位置から1行下に移動します。

ResultSetオブジェクトからのデータ取得

ResultSetインタフェースのgetRowIdメソッドを使用し、ResultSetオブジェクトからデータを取得します。

参照

getRowIdメソッドの詳細については“Java APIリファレンス”を参照してください。

SQL文の準備

ConnectionインタフェースのprepareStatementメソッドを使用し、SQL文を準備します。パラメタは、“?”で指定します。

パラメタへの値の設定

PreparedStatementインタフェースのsetXXXメソッドを使用し、パラメタに値を設定します。

参照

setXXXメソッドの詳細については“Java APIリファレンス”を参照してください。

SQL文の実行

PreparedStatementインタフェースのexecuteUpdateメソッドを使用し、SQL文を実行します。

オブジェクトのクローズ

PreparedStatementインタフェースのcloseメソッドを使用して、オブジェクトをクローズします。

トランザクションのコミット

Connectionインタフェースのcommitメソッドを使用して、トランザクションをコミットします。