数据库执行execute,executeUpdate,executeQuery
来源:互联网 发布:两个系统数据对接 编辑:程序博客网 时间:2024/05/23 13:12
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() 这是 PreparedStatement 接口中的方法
executeUpdate(String sql) 这是 PreparedStatement 从父接口 Statement 中继承过来的方法
executeUpdate() 中执行 SQL 语句需要在创建 PerparedStatement 时通过 Connection 的 prepareStatement(String sql) 方法中写出,因为 PerparedStatement 中的 SQL 语句数据库需要进行预编译和缓存,因此要在创建 PerparedStatement 对象时给出 SQL 语句。
而 executeUpdate(String sql) 是 Statement 中的方法,参数中的 SQL 语句只是提交给数据库去执行,并不需要预编译。
如果 SQL 语句中有 ? 占位符,那么在设置好占位符中的值后,必须使用 executeUpdate() 执行。而 executeUpdate(String sql) 只是提交一个 SQL 语句,且这个语句中不能带有 ? 占位符。
该方法只能做插入使用,返回刚插入数据的id,不能做更新返回这个更新记录的id
public static int ExecuteResult(Connection conn, StringBuffer sql)
throws Exception {
PreparedStatement ps = null;
int result = -1;
try {
ps = conn.prepareStatement(sql.toString());
ResultSet rset = ps.executeQuery();
if (rset.next())
result = Integer.parseInt(rset.getObject(1).toString());
rset.close();
ps.close();
} catch (SQLException e) {
e.printStackTrace();
throw e;
} finally {
sql.delete(0, sql.capacity());
ps.close();
}
return result;
}
1. ResultSet executeQuery(String sql); 执行SQL查询,并返回ResultSet 对象。
2.int executeUpdate(String sql); 可执行增,删,改,返回执行受到影响的行数。
3. boolean execute(String sql); 可执行任何SQL语句,返回一个布尔值,表示是否返回ResultSet 。
execute是executeQuery和executeUpdate的综合.
-----
executeUpdate() 这是 PreparedStatement 接口中的方法
executeUpdate(String sql) 这是 PreparedStatement 从父接口 Statement 中继承过来的方法
executeUpdate() 中执行 SQL 语句需要在创建 PerparedStatement 时通过 Connection 的 prepareStatement(String sql) 方法中写出,因为 PerparedStatement 中的 SQL 语句数据库需要进行预编译和缓存,因此要在创建 PerparedStatement 对象时给出 SQL 语句。
而 executeUpdate(String sql) 是 Statement 中的方法,参数中的 SQL 语句只是提交给数据库去执行,并不需要预编译。
如果 SQL 语句中有 ? 占位符,那么在设置好占位符中的值后,必须使用 executeUpdate() 执行。而 executeUpdate(String sql) 只是提交一个 SQL 语句,且这个语句中不能带有 ? 占位符。
该方法只能做插入使用,返回刚插入数据的id,不能做更新返回这个更新记录的id
public static int ExecuteResult(Connection conn, StringBuffer sql)
throws Exception {
PreparedStatement ps = null;
int result = -1;
try {
ps = conn.prepareStatement(sql.toString());
ResultSet rset = ps.executeQuery();
if (rset.next())
result = Integer.parseInt(rset.getObject(1).toString());
rset.close();
ps.close();
} catch (SQLException e) {
e.printStackTrace();
throw e;
} finally {
sql.delete(0, sql.capacity());
ps.close();
}
return result;
}
0 0
- 数据库执行execute,executeUpdate,executeQuery
- execute executeQuery executeUpdate
- executeQuery()、executeUpdate() 和 execute()
- execute、executeQuery、executeUpdate
- executeQuery、executeUpdate和execute
- execute、executeUpdate、executeQuery区别
- statement的四个执行方法---executeQuery/executeUpdate/execute/executeBatch---和早期数据库防黑技术
- JDBC - executeQuery、executeUpdate 和 execute
- executeQuery、executeUpdate 或 execute 方法
- executeQuery 、execute与executeUpdate区别
- JDBC execute、executeQuery和executeUpdate
- execute、executeQuery和executeUpdate之间的区别
- execute、executeQuery和executeUpdate之间的区别
- execute、executeQuery和executeUpdate之间的区别
- execute、executeQuery和executeUpdate之间的区别
- execute、executeQuery和executeUpdate之间的区别
- executeQuery、executeUpdate 和 execute的区别
- execute、executeQuery和executeUpdate之间的区别
- 将Project转化成WebProject
- JDK1.7新特性之try-with-resources和catch多种异常
- 基于iframe的无刷新上传文件,并返回上传结果
- 多维数组
- JSP简单练习-JSP动作指令
- 数据库执行execute,executeUpdate,executeQuery
- excel 如何判断文字并设置变色
- ios6以上系统对内存警告的处理
- [leetcode] Binary Tree Level Order Traversal
- OC---第四讲作业
- Web App开发入门
- 寒城攻略:Listo 教你 25 天学会 Swift 语言 - 19 Optional Chaining
- JSON中,java.lang.NoClassDefFoundError: net/sf/ezmorph/Morpher问题解决
- 从零实现MVC框架之实体映射(3)