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 新特性之批量处理数据相关推荐

  1. 深圳Java培训学习:Java8.0新特性之Lambda表达式--【千锋】

    深圳Java培训学习:Java8.0新特性之Lambda表达式–[千锋] 前言 Java 8 已经发布很久了,很多报道表明Java 8 是一次重大的版本升级.本篇文章,主要给大家介绍的是lambda表 ...

  2. 大数据技术之_11_HBase学习_03_HBase 实战之谷粒微博(练习API) + 扩展知识(布隆过滤器+HBase2.0 新特性)

    大数据技术之_11_HBase学习_03 第8章 HBase 实战之谷粒微博 8.1 需求分析 8.2 代码实现 第9章 扩展知识 9.1 HBase 在商业项目中的能力 9.2 布隆过滤器 9.3 ...

  3. SpringBoot2.0新特性 - Quartz自动化配置集成

    https://www.jianshu.com/p/056281e057b3 在新版本的SpringBoot2.0发布后,急迫尝鲜的我将相关的项目已经更换为最新版本,在SpringBoot源码GitH ...

  4. Portlet 2.0 新特性介绍(全)

    第一部分 Portlet 2.0 新特性介绍 ====================================================================== 关于本系列 ...

  5. Servlet 3.0 新特性概述

    Servlet 3.0 新特性概述 Servlet 3.0 作为 Java EE 6 规范体系中一员,随着 Java EE 6 规范一起发布.该版本在前一版本(Servlet 2.5)的基础上提供了若 ...

  6. WCF4.0新特性体验(3):标准终结点(Standard Endpoints)

    今天在WCF4.0新特性体验第3节,我们介绍WCF4.0里的标准终结点概念,也就是Standard Endpoints. WCF4.0提供了那些标准终结点?他们有什么作用?如何使用标准终结点?如何该表 ...

  7. WCF4.0新特性体验(6):路由服务Routing Service(下)

    紧接前文WCF4.0新特性体验(5):路由服务Routing Service(上).今天我们介绍WCF4.0消息路由的实现机制,然后会讲解路由服务的实现过程. [4]WCF与路由服务: 其实在介绍WC ...

  8. 【收藏】C# 2.03.0新特性总结

    c#2.0新特性 范型 我们知道通用的数据结构可以采用object存储任何数据类型.使用object问题是: 显示的强制转带来的代码复杂性 换装箱拆箱的性能损失(为什么有性能损失?因为涉及动态内存分配 ...

  9. Servlet 3.0 新特性详解

    https://www.ibm.com/developerworks/cn/java/j-lo-servlet30/ Servlet 3.0 新特性概述 Servlet 3.0 作为 Java EE ...

最新文章

  1. 你需要的大概不是 enumerated
  2. linux fedora yum安装docker-ce
  3. 通过JS如何获取IP地址
  4. C# 文件流操作 之 删除、复制、转移多个文件
  5. Linux系统巡检项目
  6. 进程控制1--fork vfork函数
  7. 如何使用Action.Invoke()触发一个Storyboard
  8. CCCC/PTA 2019模拟赛 L3-3 至多删三个字符
  9. clion开发php,如何在 Mac 上用 Clion 调试 php7 源码
  10. 提示编码有问题时,VS保存选项
  11. 山体滑坡动画用什么软件制作_做施工动画是用什么软件来做
  12. 中华石杉-- --消息队列的笔记
  13. 解决联想笔记本 FN键不起作用的方法
  14. 云计算技术与应用(高职组)赛题库 2019 年全国职业院校技能大赛题库
  15. win10桌面右下角网络图标中找不到网络
  16. JAVJ输出二进制数字
  17. 【1】谷歌2021模型量化白皮书《A White Paper on Neural Network Quantization》
  18. 【天池龙珠计划】Python训练营 Task04 Python数据分析:从0完成一个数据分析实战
  19. RAC 中GES/GCS原理
  20. 【框架学习】AOP切面详解

热门文章

  1. JavaScript定时器原理及高级使用
  2. HTML设置虚拟按键,畅玩安卓模拟器的设置虚拟按键的方法
  3. [密码学] RSA同模攻击与选择密文攻击
  4. MongoDB常见面试题及答案模板
  5. java IO流用法
  6. VirtualKD + VMWare双机调试(失败)
  7. 软件调试学习笔记(三)—— 调试事件的处理
  8. Windows保护模式学习笔记(一)—— 段寄存器GDT表
  9. 1131 Subway Map (30 分)【难度: 难 / Dijkstra最短路】
  10. 2021夏季每日一题 【week6 完结】