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

    xiaoxiao2021-03-25  50

    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的综合

    转载请注明原文地址: https://ju.6miu.com/read-39849.html

    最新回复(0)