ResultSet.createStatement参数问题
2011-04-04 13:22
211 查看
转:http://hi.baidu.com/tykl_kj/blog/item/1e2344faa3c3199558ee90b5.html
用缺省设置创建时,ResultSet 是一种只能访问一次(one-time-through)、只能向前访问(forward-only)和只读的对象。您只能访问数据一次,如果再次需要该数据,必须重新查询数据库。
然而,并不只有这一种方式。通过设置 Statement 对象上的参数,您可以控制它产生的 ResultSet。例如:
...
Class.forName(driverName);
db = DriverManager.getConnection(connectURL);
Statement statement = db.createStatement(
ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE
);
String orderElName = xmlfileEl.getElementsByTagName("order").item(0)
.getFirstChild().getNodeValue();
...
这个 Statement 现在将产生可以更新并将应用其他数据库用户所作更改的 ResultSet。您还可以在这个 ResultSet 中向前和向后移动。
第一个参数指定 ResultSet 的类型。其选项有:
TYPE_FORWARD_ONLY:缺省类型。只允许向前访问一次,并且不会受到其他用户对该数据库所作更改的影响。
TYPE_SCROLL_INSENSITIVE:允许在列表中向前或向后移动,甚至可以进行特定定位,例如移至列表中的第四个记录或者从当前位置向后移动两个记录。不会受到其他用户对该数据库所作更改的影响。
TYPE_SCROLL_SENSITIVE:象 TYPE_SCROLL_INSENSITIVE 一样,允许在记录中定位。这种类型受到其他用户所作更改的影响。如果用户在执行完查询之后删除一个记录,那个记录将从 ResultSet 中消失。类似的,对数据值的更改也将反映在 ResultSet 中。
第二个参数设置 ResultSet 的并发性,该参数确定是否可以更新 ResultSet。其选项有:
CONCUR_READ_ONLY:这是缺省值,指定不可以更新 ResultSet
CONCUR_UPDATABLE:指定可以更新 ResultSet
用缺省设置创建时,ResultSet 是一种只能访问一次(one-time-through)、只能向前访问(forward-only)和只读的对象。您只能访问数据一次,如果再次需要该数据,必须重新查询数据库。
然而,并不只有这一种方式。通过设置 Statement 对象上的参数,您可以控制它产生的 ResultSet。例如:
...
Class.forName(driverName);
db = DriverManager.getConnection(connectURL);
Statement statement = db.createStatement(
ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE
);
String orderElName = xmlfileEl.getElementsByTagName("order").item(0)
.getFirstChild().getNodeValue();
...
这个 Statement 现在将产生可以更新并将应用其他数据库用户所作更改的 ResultSet。您还可以在这个 ResultSet 中向前和向后移动。
第一个参数指定 ResultSet 的类型。其选项有:
TYPE_FORWARD_ONLY:缺省类型。只允许向前访问一次,并且不会受到其他用户对该数据库所作更改的影响。
TYPE_SCROLL_INSENSITIVE:允许在列表中向前或向后移动,甚至可以进行特定定位,例如移至列表中的第四个记录或者从当前位置向后移动两个记录。不会受到其他用户对该数据库所作更改的影响。
TYPE_SCROLL_SENSITIVE:象 TYPE_SCROLL_INSENSITIVE 一样,允许在记录中定位。这种类型受到其他用户所作更改的影响。如果用户在执行完查询之后删除一个记录,那个记录将从 ResultSet 中消失。类似的,对数据值的更改也将反映在 ResultSet 中。
第二个参数设置 ResultSet 的并发性,该参数确定是否可以更新 ResultSet。其选项有:
CONCUR_READ_ONLY:这是缺省值,指定不可以更新 ResultSet
CONCUR_UPDATABLE:指定可以更新 ResultSet
相关文章推荐
- createStatement(int resultSetType, int resultSetConcurrency)参数意义
- createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE)
- pthread_create 参数传递指针问题
- pthread_create 参数传递指针问题
- pthread_create 参数传递指针问题
- JAVA基础知识之JDBC——ResultSet的滚动和更新(statement的额外参数)
- con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
- JDBC数据库连接池connection关闭后Statement和ResultSet未关闭的问题
- Application.CreateForm中参数的问题
- pthread_create 传递参数时指针跑飞问题
- JDBC数据库连接池connection关闭后Statement和ResultSet未关闭的问题
- pthread_create传递线程参数需要注意的问题
- 'ntext/nchar/nvarchar' 的参数 '@statement'的问题解决
- document.createElement()的参数问题
- pthread_create 参数传递指针问题
- conn.createStatement参数意义
- pthread_create 参数传递指针问题(创建多线程时,循环变量的传递)
- 线程create时参数的传递问题(转载)
- java.sql.Connection.creatStatement(int resultSetType,int resultSetConcurrency)中参数的含义
- pthread_create 报函数参数不匹配问题