day17 13.滚动结果集介绍
滚动


一般结果集只能是向下的,不是滚动的,你要是想让它滚动你得设置才行。

类名或者接口里面有静态的可以。接口里面的属性全部都是public static final,类名/接口名.是属性,这些都是常量。
结果集是你查询到的结果,数据库不是给你一个人玩的吧。在高并发访问的时候很容易出现一些问题。就是你在查的时候可能别人改了。问题:你查的时候别人改了,那就是你查到的是改了的还是查到的是没改了的呢?你得到改还是不改的。



滚动结果集怎么创建?通过设置参数来创建滚动结果集。对于一些特殊需求滚动结果集绝对是有用的。分页:把数据库的某些记录拿出来,数据库里面有100条记录,全显示出来的话一页显示100条,一页显示20条5页就OK了。拿出第3页的数据:把absolute定位到第3页的开始的位置,往下循环20次就OK了,这就是滚动结果集。这个方式是可以做分页的,但是后面不会这么做。这是通用的方案,根本就不需要考虑什么数据库,只要是java支持的数据库就行,因为使用了JDBC。JDBC是跨数据库的。但是这种方案性能太低,我们后面讲分页用的是数据库本身提供的一些分页的函数,它的性能高一些。要是有一天要做一个跨数据库的分页可以这么做。
package cn.itcast.jdbc; import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement; import cn.itcast.utils.JdbcUtils; //后面开发滚动结果集用的不多,实际开发用的也不多
public class JdbcDemo7 {
public static void main(String[] args) throws SQLException {
//1.得到一个Connection
Connection con= JdbcUtils.getConnectin();
//2.得到一个执行sql语句Statement
Statement st = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);//这就代表了一个滚动的可以更新的结果集 //3.执行sql,得到结果集
ResultSet rs = st.executeQuery("select * from user"); //滚动结果集是可以向上向下跑,还可以绝对定位 //4.定位 //游标默认是在第一行上面,那你向上没了。所以是不行的
//你得让这游标往下走才能向上嘛。
rs.absolute(3);//3不是代表id值,代表的是一个绝对的物理行号
//System.out.println(rs.getInt("id") + " " + rs.getString("username") + ""); //rs.afterLast();//afterLast就是直接达到结果集的最后面 最后一行的下面 /* while(rs.previous()){
System.out.println(rs.getInt("id") + " " + rs.getString("username") + "");
}*/ rs.updateString("password","456");//对应哪个列进行修改
rs.updateRow();
//5.关闭
rs.close();
st.close();
con.close();
}
}
day17 13.滚动结果集介绍的更多相关文章
- php常用Stream函数集介绍
php常用Stream函数集介绍 作者: 字体:[增加 减小] 类型:转载 时间:2013-06-24 本篇文章是对php中的常用Stream函数集进行了详细的分析介绍,需要的朋友参考下 ...
- JDBC入门(2)--- ResultSet之滚动结果集
一.ResultSet之滚动结果集 ResultSet表示结果集,它是一个二维的表格.ResultSet内部维护一个行光标(游标),ResultSet提供了一系列的方法来移动游标: void befo ...
- SharePoint 2013 术语和术语集介绍
托管元数据是一个集中管理的术语的分层集合,我们可以定义术语和术语集,然后将其用作 SharePoint Server 2013 中项目的属性.简单的说,术语是一个可与 SharePoint Serve ...
- Apache Commons 工具集介绍
Apache Commons包含了很多开源的工具,用于解决平时编程经常会遇到的问题,减少重复劳动.下面是我这几年做开发过程中自己用过的工具类做简单介绍. 组件 功能介绍 BeanUtils 提供了对于 ...
- MySQL中间件之ProxySQL(13):ProxySQL集群
返回ProxySQL系列文章:http://www.cnblogs.com/f-ck-need-u/p/7586194.html ProxySQL有原生的集群功能,但是这个原生的集群功能还正在试验阶段 ...
- Percona Toolkit工具集介绍
部署mysql工具是一个非常重要的部分,所以工具的可靠性和很好的设计非常重要.percona toolkit是一个有30多个mysql工具的工具箱.兼容mysql,percona server,mar ...
- 探索Redis设计与实现13:Redis集群机制及一个Redis架构演进实例
本文转自互联网 本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial ...
- ProxySQL(13):ProxySQL集群
文章转载自:https://www.cnblogs.com/f-ck-need-u/p/9362822.html ProxySQL有原生的集群功能,但是这个原生的集群功能还正在试验阶段.本文会详细介绍 ...
- Java 集合系列13之 WeakHashMap详细介绍(源码解析)和使用示例
概要 这一章,我们对WeakHashMap进行学习.我们先对WeakHashMap有个整体认识,然后再学习它的源码,最后再通过实例来学会使用WeakHashMap.第1部分 WeakHashMap介绍 ...
随机推荐
- python中常用的文件和目录操作(一)
常用的文件操作 1. 打开文件 open,它是一个内置函数,可以直接调用 语法:file object = open(file_name, [access_mode]),这里我们会创建一个file对象 ...
- Docker 介绍安装
简介: Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行 ...
- tsne pca 自编码器 绘图(CC2)——一定记得做无量纲化处理使用standardscaler,数据聚类更明显
tsne 数据不做预处理: # coding: utf-8 import collections import numpy as np import os import pickle from skl ...
- MongoDB Wiredtiger存储引擎实现原理——Copy on write的方式管理修改操作,Btree cache
转自:http://www.mongoing.com/archives/2540 传统数据库引擎的数据组织方式,一般存储引擎都是采用 btree 或者 lsm tree 来实现索引,但是索引的最小单位 ...
- vue项目组件的全局注册
在vue-cli项目中,我们经常会封装自己的组件,并且要在多个界面中引用它,这个时候就需要全局注册组件. 首先我们会封装自己的组件,比如twoDimensionTable文件夹下的index.vue: ...
- LeetCode OJ:Binary Tree Preorder Traversal(前序遍历二叉树)
Given a binary tree, return the preorder traversal of its nodes' values. For example:Given binary tr ...
- New Concept English three (52)
My cousin, Harry, keeps a large curiously-shaped bottle on permanent display in his study. Despite t ...
- C++中声明和定义的区别
声明 这有一个与这个名字相关的东西,并且它是这个类型的,告诉编译器我要使用它,并期待它定义在某一个地方. 定义 定义是指提供所有必要的信息(占用内存大小),使其能够创建整个实体. 我们必须明白的: 一 ...
- ACM学习历程—HDU5667 Sequence(数论 && 矩阵乘法 && 快速幂)
http://acm.hdu.edu.cn/showproblem.php?pid=5667 这题的关键是处理指数,因为最后结果是a^t这种的,主要是如何计算t. 发现t是一个递推式,t(n) = c ...
- angular input=file ng-change事件
首先 ng-change事件要与ng-model绑定 但是 当input 的 type=file时 ngchange事件是失效的 我们可以用图中的onchange事件去代替 其次 如果想在这 ...