ResultSet和Result的区别与联系
来源:互联网 发布:2016年非农历史数据 编辑:程序博客网 时间:2024/06/05 17:36
二者的区别在于前者对于修改不敏感,而后者对于修改敏感
resultSetConcurency是设置ResultSet对象能够修改的,取值如下:
ResultSet.CONCUR_READ_ONLY 设置为只读类型的参数。
ResultSet.CONCUR_UPDATABLE 设置为可修改类型的参数。
以下两种方法的共性:返回可滚动的结果集,当数据库变化时,当前结果集同步改变。
不可用结果集更新数据库:
con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
可用结果集直接更新数据库:
con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATETABLE);
result的使用:
public Result executeQuery() throws SQLException {
Result result = null;
ResultSet rs = null;
PreparedStatement pstmt = null;
Statement stmt = null;
try {
if (values != null && values.size() > 0) {
// Use a PreparedStatement and set all values
pstmt = conn.prepareStatement(sqlValue); //SQL语句
setValues(pstmt, values); //为参数赋值,是一个数组
rs = pstmt.executeQuery();
}
else {
// Use a regular Statement
stmt = conn.createStatement();
rs = stmt.executeQuery(sqlValue);
}
result = ResultSupport.toResult(rs);
}finally {
if (rs != null) {
try {rs.close();} catch (SQLException e) {}
}
if (stmt != null) {
try {stmt.close();} catch (SQLException e) {}
}
if (pstmt != null) {
try {pstmt.close();} catch (SQLException e) {}
}
}
return result;
}
下面是遍列Result的代码
Result result = sqlCommandBean.executeQuery();
if (result == null || result.getRowCount() == 0) {
// Book not found
System.out.println("没有结果!!!");
} else {
System.out.println("有" + result.getRowCount() + "条记录!!!");
for(int i=0;i<result.getRowCount();i++){
Map map=result.getRows()[i]; //每次循环定位到一条记录
System.out.println(map.get("字段1")+" "+map.get("字段2"));
}
}
- ResultSet和Result的区别与联系
- result与resultset的区别
- Result和 ResultSet 的区别?
- ResultSet和Result的区别
- ResultSet和Result的区别
- resultset 与result 转换
- &&和&的联系与区别
- RowSet与ResultSet的区别
- RowSet与ResultSet的区别
- RowSet与ResultSet的区别
- RowSet与ResultSet的区别
- resultset与resultsetmatadata的区别
- 堆和栈的联系与区别
- BS和CS的联系与区别
- /n和/r的区别与联系
- 句柄和指针的区别与联系
- AE和AO的区别与联系
- setContentType和setCharacterEncoding的区别与联系
- Oracle数据库用户名和密码丢失的解决方案
- 虚拟机中装Linux配置网络时提示:Device eth0 has different MAC address than expected 的解决方法
- 向mysql自增长列中插入值
- windows常用命令
- mysql允许远程连接
- ResultSet和Result的区别与联系
- jsp页面中的<base>标签的作用
- Java中的路劲问题(转)
- sql server中对表添加外键约束
- ORACLE中row_number over(partition by col1 order by col2)用法
- 黑马程序员_Java高新技术之反射 Method类
- 分享高性能批量插入和批量删除sql语句写法
- windows下如何查看mysql的版本
- mysql的sql语句中如何转义系统关键字