Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java事务-在conn上提交不';T_Java_Sql Server 2005_Jdbc_Transactions_Commit - Fatal编程技术网

Java事务-在conn上提交不';T

Java事务-在conn上提交不';T,java,sql-server-2005,jdbc,transactions,commit,Java,Sql Server 2005,Jdbc,Transactions,Commit,假设我有以下Java代码片段(类似的东西嵌入到遗留应用程序中) 假设这是连接到SQL Server 2005数据库(使用ms 2005驱动程序)-是否存在con.commit不提交事务的任何原因 您还没有向我们展示SQL语句,所以很难说。也许你们有奇怪的情况,所以数据库不能更新/插入/删除任何记录 检查executeUpade()的结果。如果有任何记录被更改,它将为您提供1个或更多 数据库上可能存在阻止此类操作的触发器。是否可以使用硬编码值通过updateString从某些SQL编辑器更改数据库

假设我有以下Java代码片段(类似的东西嵌入到遗留应用程序中)

假设这是连接到SQL Server 2005数据库(使用ms 2005驱动程序)-是否存在con.commit不提交事务的任何原因

  • 您还没有向我们展示SQL语句,所以很难说。也许你们有奇怪的情况,所以数据库不能更新/插入/删除任何记录

  • 检查
    executeUpade()
    的结果。如果有任何记录被更改,它将为您提供1个或更多

  • 数据库上可能存在阻止此类操作的触发器。是否可以使用硬编码值通过
    updateString
    从某些SQL编辑器更改数据库


  • 您是如何确定它最初没有提交的?没有例外-数据库中没有注册任何更改。
    ...
    try {
        con.setAutoCommit(false);
        updateSales = con.prepareStatement(updateString);
        updateTotal = con.prepareStatement(updateStatement);
    
        updateSales.setInt(1, e.getValue().intValue());
        updateSales.setString(2, e.getKey());
        updateSales.executeUpdate();
        updateTotal.setInt(1, e.getValue().intValue());
        updateTotal.setString(2, e.getKey());
        updateTotal.executeUpdate();
        con.commit();
    } catch (SQLException e ) {
    ...