Неважно, есть ли у вас Жаба или SQ * Plus или что-то еще - все дело в коде.
Во-первых, есть ли в вашей программе какие-либо коммиты или откаты в хранимых процедурах?
Второе - ваша программа выполняет какие-либо DDL-операции: создает таблицу? Это будет делать неявный COMMIT. Имейте в виду, если ваша программа вызывает другую программу, и эта программа имеет COMMIT или DDL - вы ОБЯЗАНЫ как все это за один сеанс.
В-третьих, когда вы выполняете хранимую процедуру, в вашем анонимном блоке есть COMMIT или ROLLBACK?
Ваш инструмент вступает в игру для третьего бита. Проверьте код за кнопкой «выполнить».
В SQL Developer (аналогично Toad в этом отношении) ...
В этом случае мой SP имеет коммит в коде - поэтому исключение исключения перед этой строкой ... это постоянное изменение.
В сгенерированном анонимном блоке есть ROLLBACK, но он закомментирован. Когда вы нажмете кнопку «Выполнить» в вашем графическом интерфейсе, посмотрите на код там. Измените это при необходимости.