execute、executeUpdate、executeQuery三者的区别及返回值

一、boolean execute(String sql)
允许执行查询语句、更新语句、DDL语句。
返回值为true时,表示执行的是查询语句,可以通过getResultSet方法获取结果;返回值为false时,执行的是更新语句或DDL语句,getUpdateCount方法获取更新的记录数量。
例子:
public static void main(String[] args) {

  Connection conn = null;
  Statement stm = null;
  ResultSet rs = null;
  try {
   Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
   conn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=Test;user=sa;password=sasa");
   stm = conn.createStatement();
   boolean ret = stm.execute("select * from stuinfo");
   if(ret){
    rs = stm.getResultSet();
    while(rs.next()){
     System.out.println("姓名:"+rs.getString("stuName")+"\t年龄:"+rs.getString("stuScore"));
    }
   }
   ret = stm.execute("update stuinfo set stuScore=62 where stuname=‘张三‘");
   int count = stm.getUpdateCount();
   if(!ret){
    System.out.println(count+"条数据修改成功!");
   }
  } catch (ClassNotFoundException e) {
   e.printStackTrace();
  } catch (SQLException e) {
   e.printStackTrace();
  }  
 }
二、int executeUpdate(String sql)
执行给定 SQL 语句,该语句可能为 INSERT、UPDATE 或 DELETE 语句,或者不返回任何内容的 SQL 语句(如 SQL DDL 语句)。
返回值是更新的记录数量
三、ResultSet executeQuery(String sql)
执行给定的 SQL 语句,该语句返回单个 ResultSet 对象。

http://blog.csdn.net/kevinofneu/article/details/9447977

时间: 2024-08-12 11:07:00

execute、executeUpdate、executeQuery三者的区别及返回值的相关文章

execute、executeUpdate、executeQuery三者的区别(及返回值)

1. ResultSet  executeQuery(String sql); 执行SQL查询,并返回ResultSet 对象. 2.int              executeUpdate(String sql); 可执行增,删,改,返回执行受到影响的行数. 3.boolean     execute(String sql); 可执行任何SQL语句,返回一个布尔值,表示是否返回ResultSet . execute是executeQuery和executeUpdate的综合. 使用哪一个方

executeUpdate,executeQuery,executeBatch 的区别

executeQuery : 用于实现单个结果集,例如: Select 一般使用executeQuery 就是来实现单个结果集的工具 executeUpdate 用于执行 INSERT.UPDATE 或 DELETE 语句以及 SQL DDL(数据定义语言)语句,例如 CREATE TABLE 和 DROP TABLE.INSERT.UPDATE 或 DELETE 语句的效果是修改表中零行或多行中的一列或多列. executeUpdate 的返回值是一个整数,指示受影响的行数(即更新计数).对于

SQL中的左连接与右连接有什么区别,点解返回值会不同?(转)

例子,相信你一看就明白,不需要多说 A表(a1,b1,c1) B表(a2,b2) a1 b1 c1 a2 b2 01 数学 95 01 张三 02 语文 90 02 李四 03 英语 80 04 王五 select A.*,B.* from A left outer join B on(A.a1=B.a2) 结果是: a1 b1 c1 a2 b2 01 数学 95 01 张三 02 语文 90 02 李四 03 英语 80 NULL NULL select A.*,B.* from A righ

execute,executeUpdate,executeQuery返回值的区别

execute,executeUpdate,executeQuery返回值的区别昨天发现了个很有意思的问题,执行插入的sql,sql执行成功,数据成功插入,但是execute返回的结果一直为false,所以差了点资料,看了看源码,找到问题,写个随笔分享一下,希望对大家有帮助 execute返回结果为boolean类型源码: * @return <code>true</code> if the first result is a <code>ResultSet</c

mysql 中execute、executeQuery和executeUpdate之间的区别

在用纯JSP做一个页面报警功能的时候习惯性的用executeQuery来执行SQL语句,结果执行update时就遇到问题,语句能执行,但返回结果出现问题,另外还忽略了executeUpdate的返回值不是结果集ResultSet,而是数值!特收藏如下一篇文章: JDBCTM中Statement接口提供的execute.executeQuery和executeUpdate之间的区别 Statement 接口提供了三种执行 SQL 语句的方法:executeQuery.executeUpdate 和

转载----execute、executeQuery和executeUpdate之间的区别

JDBCTM中Statement接口提供的execute.executeQuery和executeUpdate之间的区别 Statement 接口提供了三种执行 SQL 语句的方法:executeQuery.executeUpdate 和 execute.使用哪一个方法由 SQL 语句所产生的内容决定. 方法executeQuery 用于产生单个结果集的语句,例如 SELECT 语句. 被使用最多的执行 SQL 语句的方法是 executeQuery.这个方法被用来执行 SELECT 语句,它几

JDBC中PreparedStatement接口提供的execute、executeQuery和executeUpdate之间的区别及用法

JDBC中PreparedStatement接口提供的execute.executeQuery和executeUpdate之间的区别及用法 (2012-08-27 09:36:18) 转载▼ 标签: statement execute executequery executeupdate 杂谈 分类: DataBase区 PreparedStatement接口提供了三种执行 SQL 语句的方法:executeQuery.executeUpdate 和 execute.使用哪一个方法由 SQL 语

execute、executeQuery和executeUpdate之间的区别

execute.executeQuery和executeUpdate之间的区别 博客分类: SQL SQL JDBCTM中Statement接口提供的execute.executeQuery和executeUpdate之间的区别 Statement 接口提供了三种执行 SQL 语句的方法:executeQuery.executeUpdate 和 execute.使用哪一个方法由 SQL 语句所产生的内容决定. 方法executeQuery        用于产生单个结果集的语句,例如 SELEC

execute、executeQuery和executeUpdate之间的区别 转

转:http://blog.csdn.net/colin_fantasy/article/details/3898070 execute.executeQuery和executeUpdate之间的区别 JDBC中Statement 接口提供了三种执行 SQL 语句的方法:executeQuery.executeUpdate 和 execute.使用哪一个方法由 SQL 语句所产生的内容决定. 1>方法executeQuery 用于产生单个结果集(ResultSet)的语句,例如 SELECT 语