如何判断一条sql(update,delete)语句是否执行成功

如何判断一条sql(update,delete)语句是否执行成功

catch  (SQLException    e)  {  
}  
catch不到错误应该就成功了。  
 
=====================================================================

Statement对象提供了三种执行sql语句的方法。  
1.ResultSet  executeQuery(String  sql)  
     执行查询语句,如ResultSet  rs=stmt.executeQuery(select  *  from  table_name")。  
2.int  executeUpdate(String  sql)  
     执行insert、update、delete等更新语句,返回操作的记录数目。  
3.boolean  execute(String  sql)  
     执行所有sql语句,返回执行操作是否成功。  
 
所以对于insert,update等,用executeUpdate执行后如返回的值是0则失败,为正整数则成功,用第三种方法更不需多说。

时间: 2024-09-29 20:33:16

如何判断一条sql(update,delete)语句是否执行成功的相关文章

SQL的delete语句

DELETE 语句 DELETE 语句用于删除表中的行. 语法 DELETE FROM 表名称 WHERE 列名称 = 值 Person: LastName FirstName Address City Gates Bill Xuanwumen 10 Beijing Wilson Fred Zhongshan 23 Nanjing 删除某行 "Fred Wilson" 会被删除: DELETE FROM Person WHERE LastName = 'Wilson' 结果: Last

SQL 中 SELECT 语句的执行顺序

好像自已在书写 SQL 语句时由于不清楚各个关键字的执行顺序, 往往组织的 SQL 语句缺少很好的逻辑, 凭感觉 "拼凑" ( 不好意思, 如果您的 SQL 语句也经常 "拼凑", 那您是不是得好好反省一下呢?, 呵呵). 确实是爽了自己, 可苦了机器, 服务器还需要在我们的杂乱无章的 SQL 语句中寻找它下一句需要执行的关键字在哪里. 效率嘛, 由于我们的感觉神经对秒以下的变化实在不敏感, 暂且就认为自已写的 SQL 顺序无关紧要, "反正没什么变化!&

PL/SQL的if语句的执行顺序

PL/SQL的if语句的语法定义如下: IF condition THEN {...statements...} ELSIF condition THEN {...statements...} ELSE {...statements...} END IF; 由于PL/SQL不像高级语言,没有大括号,如果statements中包含了多个操作,这些操作是否都会执行呢? 下面写了一个函数做一个实验,来验证if语句的执行顺序: <span style="font-size:18px;"&

PHP判断sql语句是否执行成功

关于这个问题的分析: 1. 这个SQL 语法是否错误? 2. 如果没错SQL是否对数据库影响了? 综上改为以下代码: $query = mysql_query("delete from `yp_user_add` where id='$id'"); if( $query && mysql_affected_rows() == 1 ){ echo '1'; }else{ echo '0'; } 仅 if( $query ) 判断的话不完善,语法没错,但表里没这个ID

java执行多条SQL语句

一次执行多条SQL的技术要点如下: DatabaseMetaData接口是描述有关数据库的整体综合信息,由于DatabaseMetaData是接口,所以没有构造方法,故不能使用new来创建DatabaseMetaData对象,但是可以通过Connection的getMetaData()方法创建.例如:DatabaseMetaData md=con.getMetaData(). DatabaseMetaData类的supportsBatchUpdates方法用于判断此数据库是否支持批量更新.其返回

MySQL中一条SQL的加锁分析

MySQL中一条SQL的加锁分析 id主键 + RC id唯一索引 + RC id非唯一索引 + RC id无索引 + RC id主键 + RR id唯一索引 + RR id非唯一索引 + RR id无索引 + RR Serializable 一条复杂的SQL 死锁原理与分析 SQL1:select * from t1 where id = 10;(不加锁.因为MySQL是使用多版本并发控制的,读不加锁.) SQL2:delete from t1 where id = 10;(需根据多种情况进行

SQL Server Merge语句的使用

Merge关键字在SQL Server 2008被引入,它能将Insert,Update,Delete简单的并为一句.MSDN对于Merge的解释非常的短小精悍:”根据与源表联接的结果,对目标表执行插入.更新或删除操作.例如,根据在另一个表中找到的差异在一个表中插入.更新或删除行,可以对两个表进行同步.”,通过这个描述,我们可以看出Merge是关于对于两个表之间的数据进行操作的. 可以想象出,需要使用Merge的场景比如: 数据同步 数据转换 基于源表对目标表做Insert,Update,Del

spring data jpa @Query注解中delete语句报错

项目中需要删除掉表中的一些数据 @Query("delete from EngineerServices es where es.engineerId = ?1") int deleteByEgId(String engineerId); 但是提示了错误 org.hibernate.hql.QueryExecutionRequestException: Not supported for DML operations 通过查阅相关的资料发现,对于执行update和delete语句需要添

容易被忽略的事----sql语句中select语句的执行顺序

关于Sql中Select语句的执行顺序,一直很少注意这个问题,对于关键字的使用也很随意,至于效率问题,因为表中的数据量都不是很大,所以也不是很在意. 今天在一次面试的时候自己见到了,感觉没一点的印象,所以也就没有答上来,现在整理一下吧,希望提醒自己,也能够帮到其他的朋友.如下: (8) SELECT (9)DISTINCT (11) <TOP_specification> <select_list> (1) FROM <left_table> (3) <join_