Считать данные, вставленные из первой выполненной хранимой процедуры во вторую хранимую процедуру, без фиксации? - PullRequest
0 голосов
/ 14 мая 2019

У меня есть java, моя компания выглядит следующим образом: Хранимая процедура 1-вызова SP_INSERTS: вставка данных без фиксации. 2-Вызов веб-службы: получение данных для вызова следующего шага.3-вызовная хранимая процедура SP_UPDATES: обновить данные, созданные на первом шаге.4-коммит или откат, если все в порядке или не в порядке.

У меня проблема в том, что на третьем этапе хранимая процедура не находит данные, вставленные на первом этапе (данные не найдены)Только если я сделаю второй шаг, я смогу найти данныеВы знаете, что я мог сделать?Есть намеки?

1 Ответ

1 голос
/ 14 мая 2019

Я не Java-парень, но пока все это делается в одной транзакции, вы должны быть хороши.Я думаю, что по умолчанию диск JDBC находится в режиме автоматической фиксации, поэтому каждый оператор фиксируется после его завершения.Вы можете изменить это поведение с помощью:

con.setAutoCommit(false);

Это требует, чтобы все эти шаги выполнялись одним и тем же соединением, поэтому, если вы используете какой-то пул соединений, это, вероятно, не будет работать.

См .: https://docs.oracle.com/javase/tutorial/jdbc/basics/transactions.html#disable_auto_commit

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...