在jdbc中有3种执行sql的语句分别是execute,executeQuery和executeUpdate

execute执行增删改查操作

execute返回的结果是个boolean型,当返回的是true的时候,表明有ResultSet结果集,通常是执行了select操作,当返回的是false时,通常是执行了insert、update、delete等操作。execute通常用于执行不明确的sql语句。

executeQuery执行查询操作

executeQuery返回的是ResultSet结果集,通常是执行了select操作。

executeUpdate执行增删改操作

executeUpdate返回的是int型,表明受影响的行数,通常是执行了insert、update、delete等操作。

实例如下:

package javaTest;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;public class ConnDataBase {public static void main(String[] args) {execute();//增删改查
//      executeQuery();//excuteQuery 查
//      executeUpdate();//excuteUpdate 增删改}/*** 获取连接* @return 连接对象*/public static Connection getConnection(){Connection con = null;try {Class.forName("oracle.jdbc.OracleDriver");//获取oracle驱动con = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:ORCL", "ssh1", "ssh1");///填入url,用户名,密码}catch(Exception e){e.printStackTrace();}return con;}/*** 用executeUpdate执行增删改操作*/public static void executeUpdate(){Connection con=null;try {con=getConnection();String sql="insert into student(s#,sname,sage,ssex) values('7','哈7','27','男')";
//          String sql="delete from student where s#='7'";
//          String sql="update student set sname='呵7' where s#='7'";Statement st=con.createStatement();//创建用于执行静态的statement对象int count=st.executeUpdate(sql);//执行sql插入(删除、更新)语句,返回插入的行数System.out.println("插入(删除、更新)"+count+"条数据");con.close();} catch (SQLException e) {e.printStackTrace();}}/*** 用executeUpdate执行查询操作*/public static void executeQuery(){Connection con = null;try {con = getConnection();String sql = "select * from Student";Statement st = con.createStatement();ResultSet rs = st.executeQuery(sql);while (rs.next()) {ResultSetMetaData rsmd = rs.getMetaData();//用于分析结果集的元数据接口int columnCount = rsmd.getColumnCount();//列数for(int i=0;i<columnCount;i++){System.out.print(rs.getString(i+1)+" ");       }System.out.println();}con.close();} catch (Exception e) {e.printStackTrace();}}/*** 用execute执行增删改查操作*/public static void execute(){Connection con = null;try {con = getConnection();String sql = "select * from Student";
//          String sql="insert into student(s#,sname,sage,ssex) values('7','哈7','27','男')";
//          String sql="delete from student where s#='7'";
//          String sql="update student set sname='呵7' where s#='7'";Statement st = con.createStatement();boolean hasResultSet = st.execute(sql);if(hasResultSet){ResultSet rs=st.getResultSet();while (rs.next()) {ResultSetMetaData rsmd = rs.getMetaData();//用于分析结果集的元数据接口int columnCount = rsmd.getColumnCount();//列数for(int i=0;i<columnCount;i++){System.out.print(rs.getString(i+1)+" ");         }System.out.println();}}else{int count=st.getUpdateCount();//受影响行数System.out.println("插入(删除、更新)"+count+"条数据");}con.close();} catch (Exception e) {e.printStackTrace();}}
}

execute,executeQuery和executeUpdate的区别相关推荐

  1. JDBC中execute、executeQuery和executeUpdate的区别

    Statement 接口提供了三种执行 SQL 语句的方法:executeQuery.executeUpdate 和 execute.使用哪一个方法由 SQL 语句所产生的内容决定. 1.方法exec ...

  2. execute、executeQuery、executeUpdate的区别

    文章目录 execute,executeQuery,executeUpdate的区别是什么? execute,executeQuery,executeUpdate的区别是什么? 1.Statement ...

  3. PreparedStatement 的 execute方法和executeUpdate方法区别

    方法executeUpdate 用于执行 INSERT.UPDATE 或 DELETE 语句以及 SQL DDL(数据定义语言)语句,例如 CREATE TABLE 和 DROP TABLE.INSE ...

  4. executeQuery与executeUpdate的区别

    executeQuery用于执行select语句,返回代表查询结果的ResultSet对象 package com.qcby.db; import java.sql.*; public class D ...

  5. execute(),executeQuery(),executeUpdate()和executeBatch()的使用与区别

    在开发过程中,我们常需要对数据库进行操作,就避免不了执行各种sql语句,就会遇到execute(),executeQuery()和executeUpdate()这个三个执行sql语句的方法,如果使用不 ...

  6. execute、executeQuery和executeUpdate之间的区别

    execute.executeQuery和executeUpdate之间的区别 JDBCTM中Statement接口提供的execute.executeQuery和executeUpdate之间的区别 ...

  7. java executequery_java execute、executeQuery和executeUpdate之间的区别

    在用纯JSP做一个页面报警功能的时候习惯性的用executeQuery来执行SQL语句,结果执行update时就遇到问题,语句能执行,但返回结果出现问题,另外还忽略了executeUpdate的返回值 ...

  8. (转)execute、executeQuery和executeUpdate之间的区别

    execute.executeQuery和executeUpdate之间的区别 JDBCTM中Statement接口提供的execute.executeQuery和executeUpdate之间的区别 ...

  9. sql语句 execute、executeQuery和executeUpdate之间的区别

    execute.executeQuery和executeUpdate之间的区别 JDBC中Statement 接口提供了三种执行 SQL 语句的方法:executeQuery.executeUpdat ...

最新文章

  1. lua源代码分析01:lua源代码结构分析
  2. OS / Linux / 主线程退出了,子线程会退出吗?
  3. 深入浅出ShellExecute(总结)
  4. leetcode之Insertion Sort List
  5. spring mvc学习(44):springMVC运行原理
  6. pxe安装linux后命令不可用,pxe自动安装linux
  7. 南通大学python期末考试试卷答案_南通大学2015-2016年1学期《软工》作业点评总结...
  8. oracle实现mysql的if_【原创】ORACLE的几个函数在MYSQL里面的简单实现
  9. MS SQL Server 2000安装不成功的原因
  10. linux内核启动后键盘不能用,编译linux-0.11内核后键盘不对的问题解决方法,比如/变成了-...
  11. MT4红绿柱黄白线双线MACD指标
  12. java高级类_Java私塾跟我学系列——JAVA篇 第五章 Java高级类特性
  13. 大数据技术原理与应用:期末考点总结
  14. 内存颗粒位宽和容量_DDR4内存终极解析(一)--DDR4内存颗粒
  15. 服装计算机辅助设计学什么,【计算机应用论文】服装设计的计算机辅助设计应用分析(共3905字)...
  16. Bluetooth Core Architecture Blocks----蓝牙核心架构
  17. 论文笔记(三):PoseCNN: A Convolutional Neural Network for 6D Object Pose Estimation in Cluttered Scenes
  18. 树莓派和主机相互PING
  19. “年薪百万”的视频剪辑师?Adobe专家让这一切都成为可能
  20. sap砍刀-做了sap半年多了,但是一直没有遇到多少问题,今天在网上看到这篇文章,于是copy过来了(对sap的学习者很有用)...

热门文章

  1. 根据结构体数组中某一数据项对结构体数组排序
  2. 大数据开发 - Java入门2
  3. Python学习之re.compile与findall
  4. xampp linux 设置密码,Linux下安装xampp
  5. 图片分割和图片合成(大图切割成小图,python代码)
  6. java编译报错提示编码gbk的不可映射字符啥意思_解决java编译错误:编码GBK的不可映射字符...
  7. Windows 下令 OpenCV 支持 h.264 视频编码的方法
  8. html语言下上标对齐,HTML 标记语言全面详细解 一天学会
  9. 硬件工程师基本功:AD的DRC设置要点详解
  10. frame组件+pack()来布局定位组件,实例讲解