■質問日: |
2007/04/13 |
■最終更新日: |
2007/04/13 |
■質問内容: |
ClientRowSetの、ある列の更新前の値(データベースから取得した値)と更新後の値を 比較するにはどうすればいいでしょうか? |
■回答内容: |
ある列の更新前と後の値を比較したい場合は以下の様なコードで実現できます。 (InternalRowHandlerを利用します。) /* 古いデータをアクセスのハンドラを準備する */ InternalRowHandler oldHandler = new InternalRowHandler(); oldHandler.setColumnSet(rowSet.getColumnSet()); /* カレント行の内部インデクッスを取得 */ Integer internalId = rowSet.getInternalRowId(rowSet.getCurrentRowIndex()); /* OldRowをハンドラにアサインする。*/ oldHandler.setCurrentInternalRow(rowSet.getDataSource().getInternalRow(internalId).OldRow); for (int i=0; iSystem.out.println("*** New values " + rowSet.getColumn(i).getName() + " = " + rowSet.getValueAsString(i)); System.out.println("*** Old values " + oldHandler.getColumnSet().get(i).getName() + " = " + oldHandler.getValueAsString(i)); } |
■添付資料: |
なし |