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的综合
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
您可能感兴趣的文章:
- oracle中where 子句和having子句中的区别介绍
- VMware下CentOS静默安装oracle12.2详细图文教程
- ORACLE中关于表的一些特殊查询语句
- ORACLE中查找定位表最后DML操作的时间小结
- Oracle中定义以及使用同义词的方法
- oracle中的一些常用函数及示例
- Oracle中字符串截取常用方法总结【推荐】
- Oracle固定执行计划之SQL PROFILE概要文件详解
- 解决python通过cx_Oracle模块连接Oracle乱码的问题
- JDBC Oracle执行executeUpdate卡死问题的解决方案