事务操作通过数据库连接对象设置:connection.setCommit(false);事务中的操作...connection.setCommit(true);

解决方案 »

  1.   

    错了,是:connection.setAutoCommit(false);//关闭自动递交事务中的操作...connection.commit()//递交
      

  2.   

    connection.setAutoCommit(false);//关闭自动递交
    PreparedStatement pstmt = con.preparedStatement("INSERT INTO LargessInfo(IdentityCard, CompanyID, EmployeeID)
       VALUES(?, ?, ?)"
    );
    pstmt.setString(1,'"+IdentityCard+"');
    pstmt.setInt(2,CompanyID);
    pstmt.setInt(3,EmployeeID);
    pstmt.executeUpadte();
    pstmt = con.preparedStatement(UPDATE VenditionInfo
       SET IsValid = 'Y' 
       FROM ("SELECT TOP 9 * ? FROM VenditionInfo WHERE IsValid = 'N'
             AND IdentityCard = ?) AS tmp
       WHERE VenditionInfo.CardID = tmp.CardID"
    )
    pstmt.setString(1,'"+IdentityCard+"');
    pstmt.executeUpadte();
    connection.commit()//递交
    connection.setAutoCommit(true);//
      

  3.   

    最好把pstmt,connection等关闭了。