05-JDBC学习手册:JDBC2.0 新特性之批量处理数据
1 Scrollability 结果集可滚动
滚动:可双向支持绝对与相对滚动,对结果集可进行多次迭代。
Con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
TYPE_FORWARD_ONLY:
该常量指示指针只能向前移动的 ResultSet 对象的类型。
TYPE_SCROLL_SENSITIVE:
该常量指示可滚动并且通常受其他的更改影响的 ResultSet 对象的类型。
CONCUR_UPDATABLE:
该常量指示可以更新的 ResultSet 对象的并发模式。
绝对定位
boolean absolute(int row)将游标移动到指定位置。
相对定位
void afterLast()将游标向后移动一位。
void beforeFirst()。将游标向前移动一位。
boolean first()将游标移动到结果集最前
boolean last()将游标移动到结果集末尾。
2 Updatability 结果集可更新
更新
//定位到要更新的记录
rs.absolute(int row);
//更新该行记录的信息
rs.updateString(“name”,”Tony”);
rs.updateInt(1,”122323”);
//更新底层数据
rs.updateRow();
插入
//把指针移动到可插入的行
rs.moveToInsertRow();
// 更新该行记录的信息
rs.updateInt(1,113);
rs.updateString(2, "test2");
rs.updateDate(3,Date.valueOf("1999-9-9"));
rs.updateFloat(4,80.5f);
// 插入数据
rs.insertRow();
rs.moveToCurrentRow();
删除
// 定位到要删除的记录
Rs.absolute( int row);
// 删除该行记录
rs.deleteRow();
注:只有在必要的时候(如桌面应用)才用结果集更新数据库,因为使用结果集更新数据库效率低下。可更新结果集还要看数据库驱动程序是否支持,如 Oracle就支持 MySql 不支持。并且只能针对一张表做结果集更新。而且不能有 join 操作。必须有主健,必须把非空没有默认值的字段查出。处理可更新结果集时不能用 select *来执行查询语句,必须指出具体要查询的字段。
3 Batch updates 可批量更新
将一组对数据库的更新操作发送到数据库统一执行(数据库支持并发执行操作),以提高效率。主要是通过减少数据(Sql 语句或参数)在网络上传输的次数来节省时间。
(1)对于 Statement 的批量更新处理
stm.addBatch(Sql);
stm.addBatch(Sql);
int[] results=stm.executeBatch();
(2)对于 PreparedStatement 的批量跟新处理
pstm.setInt(1,11);pstm.setString(2,”haha”);……..
pstm.addBatch()
pstm.setInt(1,12);pstm.setString(2,”gaga”);……..
pstm.addBatch()
int[] results=stm.executeBatch();
注:
int[] 中每一个数表示该 Sql 语句影响到的记录条数。
PreparedStatement 的更新操作比 Statement 的更新操作多了一个设置参数的过程。
05-JDBC学习手册:JDBC2.0 新特性之批量处理数据相关推荐
- 深圳Java培训学习:Java8.0新特性之Lambda表达式--【千锋】
深圳Java培训学习:Java8.0新特性之Lambda表达式–[千锋] 前言 Java 8 已经发布很久了,很多报道表明Java 8 是一次重大的版本升级.本篇文章,主要给大家介绍的是lambda表 ...
- 大数据技术之_11_HBase学习_03_HBase 实战之谷粒微博(练习API) + 扩展知识(布隆过滤器+HBase2.0 新特性)
大数据技术之_11_HBase学习_03 第8章 HBase 实战之谷粒微博 8.1 需求分析 8.2 代码实现 第9章 扩展知识 9.1 HBase 在商业项目中的能力 9.2 布隆过滤器 9.3 ...
- SpringBoot2.0新特性 - Quartz自动化配置集成
https://www.jianshu.com/p/056281e057b3 在新版本的SpringBoot2.0发布后,急迫尝鲜的我将相关的项目已经更换为最新版本,在SpringBoot源码GitH ...
- Portlet 2.0 新特性介绍(全)
第一部分 Portlet 2.0 新特性介绍 ====================================================================== 关于本系列 ...
- Servlet 3.0 新特性概述
Servlet 3.0 新特性概述 Servlet 3.0 作为 Java EE 6 规范体系中一员,随着 Java EE 6 规范一起发布.该版本在前一版本(Servlet 2.5)的基础上提供了若 ...
- WCF4.0新特性体验(3):标准终结点(Standard Endpoints)
今天在WCF4.0新特性体验第3节,我们介绍WCF4.0里的标准终结点概念,也就是Standard Endpoints. WCF4.0提供了那些标准终结点?他们有什么作用?如何使用标准终结点?如何该表 ...
- WCF4.0新特性体验(6):路由服务Routing Service(下)
紧接前文WCF4.0新特性体验(5):路由服务Routing Service(上).今天我们介绍WCF4.0消息路由的实现机制,然后会讲解路由服务的实现过程. [4]WCF与路由服务: 其实在介绍WC ...
- 【收藏】C# 2.03.0新特性总结
c#2.0新特性 范型 我们知道通用的数据结构可以采用object存储任何数据类型.使用object问题是: 显示的强制转带来的代码复杂性 换装箱拆箱的性能损失(为什么有性能损失?因为涉及动态内存分配 ...
- Servlet 3.0 新特性详解
https://www.ibm.com/developerworks/cn/java/j-lo-servlet30/ Servlet 3.0 新特性概述 Servlet 3.0 作为 Java EE ...
最新文章
- 你需要的大概不是 enumerated
- linux fedora yum安装docker-ce
- 通过JS如何获取IP地址
- C# 文件流操作 之 删除、复制、转移多个文件
- Linux系统巡检项目
- 进程控制1--fork vfork函数
- 如何使用Action.Invoke()触发一个Storyboard
- CCCC/PTA 2019模拟赛 L3-3 至多删三个字符
- clion开发php,如何在 Mac 上用 Clion 调试 php7 源码
- 提示编码有问题时,VS保存选项
- 山体滑坡动画用什么软件制作_做施工动画是用什么软件来做
- 中华石杉-- --消息队列的笔记
- 解决联想笔记本 FN键不起作用的方法
- 云计算技术与应用(高职组)赛题库 2019 年全国职业院校技能大赛题库
- win10桌面右下角网络图标中找不到网络
- JAVJ输出二进制数字
- 【1】谷歌2021模型量化白皮书《A White Paper on Neural Network Quantization》
- 【天池龙珠计划】Python训练营 Task04 Python数据分析:从0完成一个数据分析实战
- RAC 中GES/GCS原理
- 【框架学习】AOP切面详解