执行更新操作¶
在ResultSet中执行更新操作,有两个步骤。首先,设置想要更新数据,然后执行更新操作。更新某列的数据可以通过序号作为参数,也可以用列名作参数。比如要更新第一条记录:
//插入数据
stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE, ResultSet.HOLD_CURSORS_OVER_COMMIT);
sql = "SELECT ID, NAME FROM TEMP";
//将TEMP表中的所有列SELECT出来
rs = stmt.executeQuery(sql);
//将游标移到insert-row区域
rs.moveToInsertRow();
//插入数据
rs.updateInt(1,10);
rs.updateString(2, "value10");
//执行插入操作
rs.insertRow();
//将游标返回到原来的位置,如果还要插入记录,则继续执行上面的插入数据和执//行插入操作
rs.moveToCurrentRow();
//执行更新操作
if (rs.first()) {
rs.updateInt(1,100);
rs.updateString(2,"value100");
/*
* 如果用户不想更新了,可以在updateRow()前,
* 执行cancelRowUpdates()操作
*/
rs.updateRow();
}
在神通数据库 JDBC驱动中记录更新会马上生效,也就是说用户可以马上看到记录更新后的结果。