0 0

以下更新语句是否需要Commit?不Commit是否会锁表?5

public boolean updatePwd(String id,String newPassword){
boolean success = false;
Connection con = null;
try {
con = ConnectionHelper.getConnection();
PreparedStatement ps = con
.prepareStatement("UPDATE APP.SysUser "
+ "SET PASSWORD=?"
+ " WHERE id=?");

ps.setString(1, newPassword);
ps.setString(2, id);

if (ps.executeUpdate() == 0) {
throw new RuntimeException("SysUser id not found");
}
success = true;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
ConnectionHelper.closeConnection(con);
}

return success;
}
DAO 
2010年8月24日 11:10

3个答案 按时间排序 按投票排序

0 0

jdbc是自动commit

你也可以通过conn.setAutoCommit(boolean autoCommit)来设置事务是否自动提交
true:自动提交
false:手动控制

2010年9月03日 14:48
0 0

这得看你是用的那个数据库。。。。与程序没有关系。。

2010年8月24日 12:55
0 0

不需要,jdbc默认是自动commit

2010年8月24日 11:33

相关推荐

    学习SQL语句之SQL语句大全

     UPDATE --更新数据库表中的数据  --数据定义  CREATE TABLE --创建一个数据库表  DROP TABLE --从数据库中删除表  ALTER TABLE --修改数据库表结构  CREATE VIEW --创建一个视图  DROP VIEW --从数据库中...

    oracle执行update语句时卡住问题分析及解决办法

    这种只有update无法执行其他语句可以执行的其实是因为记录锁导致的,在oracle中,执行了update或者insert语句后,都会要求commit,如果不commit却强制关闭连接,oracle就会将这条提交的记录锁住。由于我的java程序...

    MySql是否需要commit详解

    mysql在进行如插入(insert)操作的时候需不需要commit,这得看你的存储引擎, 如果是不支持事务的引擎,如myisam,则是否commit都没有效的。 如果是支持事务的引擎,如innodb,则得知道你事物支持是否自动提交事务...

    Oracle Form中COMMIT的概述及使用技巧

    1. COMMIT_FORM和... FORMS_DLL(‘COMMIT’) 只针对代码中insert、update、delete语句进行提交,form上面的数据不提交。 DG 里面提到: Replace COMMIT with do_key(‘commit_form’), This routine raises the exc

    oracle Session与lock 解除

    ORACLE里锁有以下几种模式: 0:none 1:null 空 2:Row-S 行共享(RS):共享表锁 3:Row-X 行专用(RX):用于行的修改 4:Share 共享锁(S):阻止其他DML操作 5:S/Row-X 共享行专用(SRX):阻止其他...

    SQL语句练习大全

    DDL用来创建数据库中的各种对象,包括数据库模式、表、视图、索引、同义词、聚簇等,它的基本语句有:CREATE DATABASE、CREATE TABLE、CREATE VIEW、CREATE INDEX等。 (4)数据控制语言(DCL) DCL用来授予或回收...

    SQL语句语法.doc

    13.4.3. 会造成隐式提交的语句 13.4.4. SAVEPOINT和ROLLBACK TO SAVEPOINT语法 13.4.5. LOCK TABLES和UNLOCK TABLES语法 13.4.6. SET TRANSACTION语法 13.4.7. XA事务 13.5. 数据库管理语句 13.5.1. 账户管理...

    SQL语句全集及操作大全

    详细说明SQL语句应用及操作。--语 句 功 能 --数据操作 SELECT --从数据库表中检索数据行和列 INSERT --向数据库表添加新数据行 DELETE --从数据库表中删除数据行 UPDATE --更新数据库表中的数据 -数据定义 CREATE...

    pre-commit相关文件.zip

    配合git的hooks使用,phplint可以检测语句是否有错误,phpcs可以检测psr-2代码格式规范。内容包含pre-commit,.phplint.yml,.csignore。

    Java中事务的实现

    在JDBC中,打开一个连接对象Connection时,缺省是auto-...在auto-commit模式屏蔽掉之后,如果不调用commit()方法,SQL语句不会得到事务确认。在最近一次commit()方法调用之后的所有SQL会在方法commit()调用时得到确认。

    经典SQL语句详解清晰的学习思路

    语句部分是Mssql语句,不可以在access中使用。  SQL分类:  DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE)  DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT)  DCL—数据控制语言(GRANT,REVOKE,...

    oracle-捕获提交过频语句SQL语句

    捕获oracle中提交过频语句SQL语句,快速定位问题sql。

    SQL语句优化

    优化数据库、SQL语句...实际上,带有任何WHERE条件的 DML(INSERT、UPDATE、DELETE)语句中都包含查询要求,在后面的文章中,当说到查询时,不一定只是指SELECT语句,也有可能指 DML语句中的查询部分。尽量多使用COMMIT

    SessionFactory.getCurrentSession与openSession的区别

    博文链接:https://shaqiang32.iteye.com/blog/201918

    经典全面的SQL语句大全

    根据SQL语句执行后是否返回记录集,该方法的使用格式分为以下两种:  1.执行SQL查询语句时,将返回查询得到的记录集。用法为:  Set 对象变量名=连接对象.Execute("SQL 查询语言")  Execute方法调用后,会自动...

    mysql 锁表锁行语句分享(MySQL事务处理)

    代码如下: mysql_query(“set autocommit=0”); $list_one = $db->fetch_first(“select * from prizes ... START TRANSACTION, COMMIT和ROLLBACK语法 代码如下: START TRANSACTION | BEGIN [WORK] COMMIT [WORK]

    SQL语句大全大全(经典珍藏版)

    SQL语句大全大全(经典珍藏版) --数据操作 SELECT --从数据库表中检索数据行和列 INSERT --向数据库表添加新数据行 DELETE --从数据库表中删除数据行 UPDATE --更新数据库表中的数据 -数据定义 CREATE TABLE...

    常用SQL语句(为学习提供参考)

    下列语句部分是Mssql语句,不可以在access中使用。  SQL分类:  DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE)  DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT)  DCL—数据控制语言(GRANT,REVOKE,...

    java面试题(SQL语句).pdf

    java面试题(SQL语句).pdf 面试必须要知道的 SQL语法,语句 SQL分类: DDL—数据定义语言(Create,Alter,Drop,DECLARE) DML—数据操纵语言(Select,Delete,Update,Insert) DCL—数据控制语言(GRANT,REVOKE,...

    SQL里的各种语句的"完整语法"

    SQL里的各种语句的"完整语法",SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)

Global site tag (gtag.js) - Google Analytics