java里进行数据库更新时,怎么取得影响的行数值?

java里进行数据库更新时,怎么取得影响的行数值?
使用sql2000查询分析器时更新时不是会提示更新的行数吗,在java连接时怎么取这个值,只要说到stmt.excuteUpdate后关键那一段就行了

用什么来接收这个值?int num=stmt.executeupdate(sql)吗

如果没有更新那是不是返回0?

1、用sql语句中的count函数,然后从ResultSet里获取第一行的数字:
try {
ResultSet resultSet = statement.executeQuery("select count(1) as nRrow from tableName");//使用sql的count函数
resultSet.next();//移动到第一行
int rowCount = resultSet.getInt("rowCount");//获取行数值
} catch (Exception e) {
e.printStackTrace();
}
这种方法不用遍历整个数据集,节省了运算时间,但是,此方法只能用于获取数据表的行数,不能获取表中的具体数据。所以如果只是想知道数据表的行数,此方法非常适合。
2、遍历Resultset,用一个变量累加记录行数,代码如下:
int nRow = 0;
try {
ResultSet resultSet = statement.executeQuery("select * from tableName");//使用select语句查询数据表

while(resultSet.next()){//遍历
nRow++;
}
} catch (SQLException e1) {
e1.printStackTrace();
}
next 函数将指针移动到下一行;因为该方法在 ResultSet 对象中没有下一行时返回 false,所以可以在 while 循环中使用它来迭代结果集。
这种方法需要遍历整个结果集,在遍历过程中可以获取数据;
但是在遍历完之后,不能再使用结果集了,因为这时候指针已经移动到结果集的外面了,不能返回到结果集的初始处。
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-09-21
excuteUpdate是有返回值的啊,它的返回值就是影响的行数

就像你说的那样就可以啊本回答被提问者采纳
第2个回答  2007-08-31
试验一下就知道了.
第3个回答  2007-08-30
不是很清楚,
建议楼主说得更清楚一点:)
相似回答