MySQL execute、executeUpdate、executeQuery三者的区别
16lz
2021-12-31
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(); } }
执行给定 SQL 语句,该语句可能为 INSERT、UPDATE 或 DELETE 语句,或者不返回任何内容的 SQL 语句(如 SQL DDL 语句)。
返回值是更新的记录数量
三、ResultSet executeQuery(String sql)
执行给定的 SQL 语句,该语句返回单个 ResultSet 对象。
execute是executeUpdate与executeQuery的综合
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
更多相关文章
- android上一些方法的区别和用法的注意事项
- Android中的FILL_PARENT与WRAP_CONTENT的区别
- [Android] ACTION_GET_CONTENT与ACTION_PICK的区别
- android上一些方法的区别和用法的注意事项
- linearLayout 和 relativeLayout的属性区别
- 【Android】loadData与loadDataWithBaseURL的区别
- Android中visibility属性VISIBLE、INVISIBLE、GONE的区别
- Unable to execute dex: Multiple dex files define Lcom/jayway
- Android中的getApplication()、getApplicationContext的区别与用