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

来源:百度知道 编辑:UC知道 时间:2024/05/13 13:25:26
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 循环中使用它来迭代结果集。
这种方法需要遍历整个结果集,在遍历过程中