executeUpdate:执行数据库的更新、插入和删除操作 ,返回改变记录的行数
executeQuery:执行查询语句, 返回结果集
execute:兼具上面二者的功能
executeBatch:执行Vector中的n个SQL语句 即批量处理 要执行的sql语句
一、比较execute、executeUpdate的区别
1.相同点:
execute与executeUpdate的相同点:都可以执行增加,删除,修改
2.不同点
execute可以执行查询语句,然后通过getResultSet,把结果集取出来。
executeUpdate不能执行查询语句。
execute返回boolean类型,true表示执行的是查询语句,false表示执行的是insert,delete,update等等。
executeUpdate返回的是int,表示有多少条数据受到了影响。
executeBatch()方法:用于成批地执行SQL语句,但不能执行返回值是ResultSet结果集的SQL语句,而是直接执行stmt.executeBatch();
addBatch():向批处理中加入一个更新语句。
clearBatch():清空批处理中的更新语句
executeUpdate:执行数据库的更新、插入和删除操作 ,返回改变记录的行数executeQuery:执行查询语句, 返回结果集execute:兼具上面二者的功能executeBatch:执行Vector中的n个SQL语句 即批量处理 要执行的sql语句一、比较execute、executeUpdate的区别1.相同点: execute与executeUpdate的相同点...
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
public class ...
今天在项目中出现了一个问题,delete 语句使用executeUpdate方法后,如果是更新一条数则返回1,但是更新一条以上数据就出现返回0的问题,我一直以为executeUpdate返回更新的条数是错误的?带着疑问我们查看源码:
@Override
public int update(final String sql) throws DataAccessException {
Asser...
对于这一类问题,一般都是数据库事务未提交,导致executeUpdate卡死。
所以解决方案:
1、在执行完executeUpdate 后,记得将事务提交con.commit();
2、找到数据库客户端,执行commit操作。
如果以上操作还不行。 那么应该是数据库在执行 数据操作失败 or 事务未提交 之后 将需要执行的sql语句锁死了
Oracle的操作方式:
先查询锁定记录 :
SELECT s.sid, s.serial# FROM v$locked_object lo, dba_objects ao, v$s
一、boolean execute(String sql)
允许执行查询语句、更新语句、DDL语句。
返回值为true时,表示执行的是查询语句,可以通过getResultSet方法获取结果;返回值为false时,执行的是更新语句或DDL语句,getUpdateCount方法获取更新的记录数量。
public static void main(String[] args) {
Connection conn = null;
Statement stm = null;
ResultSet
在开发过程中,我们常需要对数据库进行操作,就避免不了执行各种sql语句,就会遇到execute(),executeQuery()和executeUpdate()这个三个执行sql语句的方法,如果使用不当,就会导致我们执行报错,如:update语句需要executeUpdate()方法来执行,如果你选择使用了executeQuery(),系统就会提示错误,执行失败。当我们对sql语句进行批量处理的时候,就会用到executeBatch()方法。
Statement 接口提供了三种执行 SQL 语句的方法:ex
因为我使用了查询(select)语句,所以不执行。微软官方文档明确指出,
只能使用SQL INSERT、UPDATE、MERGE 或 DELETE 语句;或是不返回任何内容的 SQL 语句,如 DDL 语句。
官方文档 https://docs.microsoft.com/zh-cn/sql/connect/jdbc/reference/executeupdate-method?view=sql-server-ver15
com.microsoft.sqlserver.jdbc
import java.sql.Statement;
public class TestJDBC {
public static void main(String[] args) {
try {
今天来总结一下execute和executeUpdate的相同点和不同点。
在jdbc中,execute和executeUpdate都可以执行增加,删除,修改。
具体例子:
package jdbc5;
import java.sql.*;
public class test1 {
public static void main(String[] args) {
Connecti...