如何从 java 中的 executeUpdate 或更新中获取值?
How to get a value from an executeUpdate OR update in java?
我正在尝试从 postgresql 更新中获取一些返回数据。 "update" 在数据库脚本中运行良好,但在 java 中我遇到了一些问题:代码在执行查询时卡住了。
我正在尝试使用 "PreparedStatament ps"、"ResultSet rs=ps.executeQuery" 和 "if(rs.next)" 从查询中的 "returning" 获取数据,但代码似乎没有获取在那里,因为它正好卡在 "ps.executeQuery" 中。
这或多或少是我正在尝试做的事情:
String cVal="";
ps=myConn.prepareStatement("UPDATE someTable SET aValue=? WHERE bValue=?
returning Cvalue");
ps.setInt(1,"aNewValue");
ps.setInt(2,"aID");
rs=ps.executeQuery();
if (rs.next()){
cVal=rs.GetString("Cvalue");
return true;
}else{
return false;
}
我正在尝试将 "RETURNING" 的值设置为一些变量。我要设置 4 个结果。
由于您正在尝试更新,在 PreparedStatement 的情况下,您必须使用 executeUpdate() 方法。
要了解有关 Statement 和 PreparedStatment 中方法的更多详细信息,请查看下面的
https://docs.oracle.com/javase/8/docs/api/java/sql/PreparedStatement.html#executeUpdate--
你可以参考下面的例子。
https://www.mkyong.com/jdbc/jdbc-preparestatement-example-update-a-record/
首先用ps.executeUpdate ()
执行更新语句,其中returns整数0
或1
。该值指示更新语句是否已执行。之后,执行 select 查询以获取更新后的数据。
我正在尝试从 postgresql 更新中获取一些返回数据。 "update" 在数据库脚本中运行良好,但在 java 中我遇到了一些问题:代码在执行查询时卡住了。
我正在尝试使用 "PreparedStatament ps"、"ResultSet rs=ps.executeQuery" 和 "if(rs.next)" 从查询中的 "returning" 获取数据,但代码似乎没有获取在那里,因为它正好卡在 "ps.executeQuery" 中。
这或多或少是我正在尝试做的事情:
String cVal="";
ps=myConn.prepareStatement("UPDATE someTable SET aValue=? WHERE bValue=?
returning Cvalue");
ps.setInt(1,"aNewValue");
ps.setInt(2,"aID");
rs=ps.executeQuery();
if (rs.next()){
cVal=rs.GetString("Cvalue");
return true;
}else{
return false;
}
我正在尝试将 "RETURNING" 的值设置为一些变量。我要设置 4 个结果。
由于您正在尝试更新,在 PreparedStatement 的情况下,您必须使用 executeUpdate() 方法。
要了解有关 Statement 和 PreparedStatment 中方法的更多详细信息,请查看下面的
https://docs.oracle.com/javase/8/docs/api/java/sql/PreparedStatement.html#executeUpdate--
你可以参考下面的例子。 https://www.mkyong.com/jdbc/jdbc-preparestatement-example-update-a-record/
首先用ps.executeUpdate ()
执行更新语句,其中returns整数0
或1
。该值指示更新语句是否已执行。之后,执行 select 查询以获取更新后的数据。