JDBC--Statement使用
1、通过Statement实现类执行更新操作(INSERT、UPDATE 、DELETE):
--1)获取数据库连接Connection的对象;
--2)通过Connection类的createStatement()方法获取Statement对象;;
--3)调用Satement类的executeUpdate(sql) 方法执行更新操作;
--4)释放数据库资源(关闭Statement对象和Connection对象);
public static int update(String sql){
Connection conn = null;
Statement statement = null;
int influencedRows = 0;
try{
//获取数据连接
conn = JDBCUtils.getConnection();
//获取Statement对象
statement = conn.createStatement();
//执行更新操作
influencedRows = statement.executeUpdate(sql);
}catch(Exception e){
e.printStackTrace();
}finally{
//释放资源
release(conn, statement);
}
//返回受影响行数
return influencedRows;
}
2、通过Statement实现类执行查询并获取查询数据:
--步骤与更新大致相同,但是这里使用Statement的executeQuery(sql)方法来执行查询操作,该操作将返回一个ResultSet结果集;
--ResultSet以逻辑表格的形式封装了数据库操作的结果集,ResultSet类维护了一个游标,该游标一开始指向数据表第一行的前面,可通过其next()方法进行下移,若检测到下一行有数据,则游标下移,并返回true,此时可通过getXxx(columnIndex | columnName)等方法获取具体列的值。
public static void query(){
Connection conn = null;
Statement statement = null;
ResultSet rs = null;
String sql = "select * from employees";
try{
//1、获取数据库连接
conn = JDBCUtils.getConnection();
//2、获取Satement对象
statement = conn.createStatement();
//3、调用Statement类的executeQuery(sql)方法获取结果集ResultSet
rs = statement.executeQuery(sql);
//4、获取ResultSet中的数据
while(rs.next()){
int id = rs.getInt("employee_id");
String name = rs.getString("last_name");
double salary = rs.getDouble("salary");
System.out.println("ID: " + id);
System.out.println("Last Name: " + name);
System.out.println("Salary: " + salary);
}
}catch(Exception e){
e.printStackTrace();
}finally{
//5、关闭数据库资源
if(rs != null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
release(conn, statement);
}
}
JDBC--Statement使用的更多相关文章
- Error executing DDL via JDBC Statement
© 版权声明:本文为博主原创文章,转载请注明出处 1.问题描述: 启动hibernate测试案例时报错如下: org.hibernate.tool.schema.spi.CommandAcceptan ...
- Error executing DDL via JDBC Statement 导致原因之一:列名使用了sql关键字
WARN: GenerationTarget encountered exception accepting command : Error executing DDL via JDBC Statem ...
- Jdbc -Statement
Java提供了 Statement.PreparedStatement 和 CallableStatement三种方式来执行查询语句: PreparedStatement是用于执行参数化查询 预编译s ...
- 聊聊jdbc statement的fetchSize
在使用MySQL的JDBC时,如果查询结果集过大,使用一次查询,可能会出现Java.lang.OutOfMemoryError: Java heap space问题,因为DB服务器端一次将查询到的结果 ...
- JDBC Statement对象执行批量处理实例
以下是使用Statement对象的批处理的典型步骤序列 - 使用createStatement()方法创建Statement对象. 使用setAutoCommit()将自动提交设置为false. 使用 ...
- java基础 JDBC & Statement & PreparedStatement
参考文章: http://blog.csdn.net/wang379275614/article/details/23393335 概念 JDBC-数据库连接,是由一些类和接口构成的API,是J2SE ...
- JDBC——Statement执行SQL语句的对象
Statement该对象用于执行静态SQL语句并返回它产生的结果.表示所有的参数在生成SQL的时候都是拼接好的,容易产生SQL注入的问题 PreparedStatement对象是一个预编译的SQL语句 ...
- JDBC Statement PrepareStatement
1.JDBC中Statement接口和PrepareStatement接口关系与区别 Statement接口不能使用占位符?,需要拼sql,所以没有setInt,setString等方法:Prepar ...
- JDBC statement的常用方法
Statement接口: 用于执行静态SQL语句并返回它所生成结果的对象. 三种Statement类: Statement: 由createStatement创建,用于发送简单的SQL语句(最好是不带 ...
- Java:Hibernate报错记录:Error executing DDL via JDBC Statement
想着写一篇hibernate的博文,于是准备从头开始,从官网下了最新的稳定版本来做讲述. 结果利用hibernate自动建表的时候发生下面这个问题. 我很纳闷,之前用低版本一点的没有发生这个问题啊. ...
随机推荐
- [面试必备]深入理解Java的volatile关键字
前言 在Java并发编程中,volatile关键字有着至关重要的作用,在面试中也常常会是必备的一个问题.本文将会介绍volatile关键字的作用以及其实现原理. volatile作用 volatile ...
- twisted task.cpperator
twisted task.cpperator 1. twisted task.cpperator 1.1. 简介-cooperator 官方文档: https://twistedmat ...
- 思科室外AP无法注册到WLC
思科的一些新的室外AP,在购买回来时,有时候会出现无法加入WLC的情况,现象基本是无法加入,或感觉加入了,立马又掉了. 例如: AIR-AP1562E-H-K9 AIR-AP1572EAC-H-K9 ...
- 关于cctype头⽂件⾥的⼀些函数
本文摘录柳神笔记: 刚刚在头⽂件那⼀段中也提到, #include 本质上来源于C语⾔标准函数库中的头⽂件 #include ,其实并不属于C++新特性的范畴,在刷PAT⼀些字符串逻辑题的时候也经常⽤ ...
- 洛谷 P5019 铺设道路(差分)
嗯... 题目链接:https://www.luogu.org/problem/P5019 首先简化一下题意: 给定一个长为N的数组,每次操作可以选择一个区间减去1,问最少多少次操作可以将数组中的数全 ...
- python集合操作方法详解
前言 说集合之前,我们先说一个小例子,假设某公司有五个人喜欢打篮球,五个人喜欢打游戏,问即打游戏有打篮球的人都有哪些? play_basketball = ['a','b','c','d','e'] ...
- RestTemplate post请求使用map传参 Controller 接收不到值的解决方案 postForObject方法源码解析.md
结论 post方法中如果使用map传参,需要使用MultiValueMap来传递 RestTemplate 的 postForObject 方法有四个参数 String url => 顾名思义 ...
- 复盘实战营一期毕业典礼----HHR计划----以太入门课--第一课
你要永远记住,实事求是. 我好像没能力给大家分享什么.分享点我的专业知识吧.我是做推荐+增长的,在一家D轮 DAU快千万的创业公司做增长优化负责人.一路优化,我把人均时长提高了30多分钟(现在人均时长 ...
- 导出EXCEL设置单元格格式
怎么设置导出的EXCEL文件的列格式 如何设置导出的EXCEL文件的列格式在office的EXCEL中我们可以在一个EXCEL文件中,选中一列再点击鼠标右键,选择设置单元格格式,可以将这一列设为文本格 ...
- Caffe2 手册(Intro Tutorial)[2]
Caffe2的相关概念 接下来你可以学到更多Caffe2中主要的概念,这些概念对理解和开发Caffe2相当重要. Blobs and Workspace,Tensors Caffe2中,数据是 ...