java里进行数据库更新时,怎么取得影响的行数值?
java里进行数据库更新时,怎么取得影响的行数值?使用sql2000查询分析器时更新时不是会提示更新的行数吗,在java连接时怎么取这个值,只要说到stmt.excute...
java里进行数据库更新时,怎么取得影响的行数值?
使用sql2000查询分析器时更新时不是会提示更新的行数吗,在java连接时怎么取这个值,只要说到stmt.excuteUpdate后关键那一段就行了
用什么来接收这个值?int num=stmt.executeupdate(sql)吗
如果没有更新那是不是返回0? 展开
使用sql2000查询分析器时更新时不是会提示更新的行数吗,在java连接时怎么取这个值,只要说到stmt.excuteUpdate后关键那一段就行了
用什么来接收这个值?int num=stmt.executeupdate(sql)吗
如果没有更新那是不是返回0? 展开
4个回答
展开全部
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 循环中使用它来迭代结果集。
这种方法需要遍历整个结果集,在遍历过程中可以获取数据;
但是在遍历完之后,不能再使用结果集了,因为这时候指针已经移动到结果集的外面了,不能返回到结果集的初始处。
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 循环中使用它来迭代结果集。
这种方法需要遍历整个结果集,在遍历过程中可以获取数据;
但是在遍历完之后,不能再使用结果集了,因为这时候指针已经移动到结果集的外面了,不能返回到结果集的初始处。
展开全部
excuteUpdate是有返回值的啊,它的返回值就是影响的行数
就像你说的那样就可以啊
就像你说的那样就可以啊
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
试验一下就知道了.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不是很清楚,
建议楼主说得更清楚一点:)
建议楼主说得更清楚一点:)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询