日期:2014-05-20  浏览次数:20621 次

求一个oracle数据库更新语句
     我知道 update 表 set 字段1 = 值,字段2 = 值 where 字段3 = 值 这种形式的更新,现在我想把值改成动态传递,比如某个查询的结果集中的rs.getstring(1)赋给字段1,请问怎么弄啊?
------解决方案--------------------
楼主是想更新的表数据是从另一张表的查询结果中来的吧,那你的两张表要存在某种关系的关联。如果是这样的话可以用
update t1 set t1.字段1=t2.字段1, t1.字段2=t2.字段2, t1.字段3=t2.字段3 from table1 t1 left join table t2 on t1.关联字段=t2.关联字段
where t1.字段3 = 值
------解决方案--------------------
用?作为占位符,然后传值。

String sql = “update table name = ?,sex = ? where id = ?”;
....
pstm.setString(1,‘AA’);
pstm.setString(2,,'女');