? 有两种方法得到结果集,一种是直接执行查询语句,将结果存储在结果集对象上;另一种是不存储返回结果 , 而在需要时调用数据库语句的getResultSet方法来返回结果集
结果集
? 结果集指针
由于返回的结果集可能包含多条数据记录,因此ResultSet 接口提供了对结果集的所有数据记录轮询的方法 。结果集自动维护了一个指向当前数据记录的指针,初始时这个指针是指向第一行的前一个位置 。next 方法就是用于向前移动指针的
结果集
? 结果集属性
默认情况下,结果集是一个不可更新集,并且结果集的指针也只能向前移动 。也就是说,在得到了一个结果集之后,用户只能按照从第一条记录到最后一条记录的顺序依次向后读?。荒芴饺我馓跫锹忌?nbsp;, 也不能返回到前面的记录 。不仅如此,结果集的这种轮询只能进行一次,而不能再将指针重置到初始位置进行多次轮询
结果集
? 结果集属性
类型
并发性
有效性
? 属性的设置是在生成数据库语句时通过向生成方法传入相应的参数设定的,而当结果集已经返回时就不能够再改变它的属性了 。
结果集生成Statement语句共有三种方法
public Statement createStatement() throws SQLException;
public Statement createStatement
(int resultSetType, int resultSetConcurrency)
throws SQLException;
public Statement createStatement
(int resultSetType, int resultSetConcurrency,
int resultSetHoldability)
throws SQLException;
结果集
? 生成PreparedStatement语句共有六种方法
public PreparedStatement prepareStatement(String sql) throws SQLException;
public PreparedStatement prepareStatement(String sql, int autoGeneratedKeys)
throws SQLException;
public PreparedStatement prepareStatement(String sql, int[] columnIndexes)
throws SQLException;
public PreparedStatement prepareStatement(String sql, int resultSetType,
int resultSetConcurrency)
throws SQLException;
public PreparedStatement prepareStatement(String sql, int resultSetType,
int resultSetConcurrency,
int resultSetHoldability)
throws SQLException;
public PreparedStatement prepareStatement(String sql. String[] columnNames)
throws SQLException;
结果集
? 生成CallableStatement语句共有三种方法
public CallableStatement prepareCall(String sql)
throws SQLException;
public CallableStatement prepareCall
(String sql, int resultSetType,
int resultSetConcurrency)
throws SQLException;
public CallableStatement prepareCall
(String sql, int resultSetType,
int resultSetConcurrency,
int resultSetHoldability)
throws SQLException;
结果集
结果集类型
? 结果集的类型共有三种,TYPE_FORWARD_ONLY类型的结果集只能向前移动指针,而TYPE_SCROLL_INSENSITIVE类型和TYPE_SCROLL_SENSITIVE类型的结果集则可以任意移动指针 。后两种类型的区别在于 , 前者对来自其它处的修改不敏感(静态),而后者则对于别人的修改敏感(动态视图) 。
结果集
结果集类型
?对于可以任意移动指针的结果集,可以用来移动指针的方法包括:
? next 和previous :
? absolute 和relative :参数可正可负
? afterLast 、beforeFirst 、last 和first :
结果集
结果集并发性
? 结果集的并发性共有两种 , CONCUR_READ_ONLY的结果集是只读而不可更新的;而CONCUR_UPDATABLE的结果集则是可以通过update方法进行更新的 。
? ResultSet接口提供了一组update方法,用于更新结果集中的数据 。这些方法与PreparedStatement接口中定义的setter方法一样,也是与类型相对应的 。所有的update方法都以update开头。
推荐阅读
- 抖音创业课程直播话术,抖音直播知识类课程话术
- erp系统应用实例,erp系统例子
- 创维电视id是什么,创维电视id是型号吗
- linux中pwd命令 linux中pwd命令是做什么用的?
- 安卓gg修改器免root权限,gg修改器手机版教程无root
- 在线html5制作中文,html5中文名称
- 经营牧场农场类游戏单机版,经营牧场的游戏
- linux命令行如何上翻 linux命令怎么翻页
- 直播新闻要什么格式的,直播新闻要什么格式的视频