gpt4 book ai didi

java - 在第二个存储过程中读取第一个执行的存储过程插入的数据而不提交?

转载 作者:行者123 更新时间:2023-12-02 09:54:08 24 4
gpt4 key购买 nike

我的java业务是这样的:1-调用存储过程SP_INSERTS:插入数据而不提交2-调用Web服务:检索数据以进行下一步的调用。3-调用存储过程SP_UPDATES:更新第一步创建的数据。4-如果一切正常或不正常,则提交或回滚。

我遇到的问题是,在第三步中,存储过程没有找到第一步中插入的数据(没有找到数据),只有当我在第二步之后提交时,我才能找到数据。你知道我能做什么吗?有什么提示吗?

最佳答案

我不是 Java 人员,但只要所有这些都是在同一个事务中完成的,你应该会很好。我认为默认情况下,JDBC 驱动器处于自动提交模式,因此每个语句在完成后都会提交。您可以通过以下方式更改此行为:

con.setAutoCommit(false);

这要求所有这些步骤都通过同一个连接完成,因此如果您使用某种连接池,这可能不起作用。

参见:https://docs.oracle.com/javase/tutorial/jdbc/basics/transactions.html#disable_auto_commit

关于java - 在第二个存储过程中读取第一个执行的存储过程插入的数据而不提交?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56121079/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com