• 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 对象。


    execute是executeUpdate与executeQuery的综合

  • 相关阅读:
    有向强连通分支Tarjan算法
    让理科生沉默,让文科生落泪的题
    迷宫求解(数据结构栈应用)
    编程中无穷大常量的设定技巧
    poj 3159 差分约束+spfa
    codevs 1690 线段树
    uvalive 2756 环形排列颠倒的次数
    poj 2182 树状数组
    uva 10943 数学
    uva 10780 分解质因数
  • 原文地址:https://www.cnblogs.com/tianguook/p/2391322.html
Copyright © 2020-2023  润新知