开发者学堂课程【JDBC 数据库开发入门:结果集的特性】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/29/detail/633
结果集的特性
内容简介:
一、结果集特性
二、第一个参数
三、第二个参数
一、结果集特性:
当使用connection的createStatement,时,已经确定了statement生成的结果集是什么特性。
con.createsttement():
生成的结果集:不滚动、不敏感、不可更新!
结果集是否支持滚动,要从 Connection类的 createStatement()方法说起。也就是说创建的Statement决定了使用statement创建的Resultset是否支持滚动。
二、第一个参数:
Resultset.TYPE_FORWARD_ONLY:不滚动结果集;
ResultSeL.TYPE_SCROLL_INSENSITIVE:滚动结果集,但结果集数据不会再跟随数据库而变化;
ResultSet.TYPE_SCROLL_SENSITIVE):滚动结果集;但结果集数据不会再跟随数据库而变化;
不想滚动使用FORWARD,想滚动使用SCROLL。
三、第二个参数:
CONCUR_READ_ONLY:结果集是只读的,不能通过修改结果集而反向影响数据库;
CONCUR_UPDATABLE:结果集是可更新的,对结果集的更新可以反向影响数据库。
可以看出,如果想使用滚动的结果集,应该选择TYPE_SCROLL_INSENSITiIVE!其实很少有数据库驱动会支持TYPE_SCROLL_SENSITiIVE的特性!
通常我们也不需要查询到的结果集再受到数据库变化的影响。
敏感是指数据库变了,结果集也跟随其变化。
可更新是指结果集如果更改,进而反向影响数据库。
一般日常使用READ和FORWARD
使用createSttement创建的程序,可以调用以下几种:
Void before First():把光标放到第一行的前面,这也是光标默认的位置。
Void afterLast():把光标放到最后一行的后面。
Boolean first():把光标放到第一行的位置上,返回值表示调控光标是否成功。
Boolean last():把光标放到最后一行的位置上。
Boolean next():把光标向下挪一行。