Как правило, что-то подобное не будет успешным вообще; большинство менеджеров ресурсов по умолчанию не позволяют транзакции продолжаться так долго, и если они это сделали (и если задействовано несколько менеджеров ресурсов), то в зависимости от объема данных, которые обновляются / модифицируются, акт совершения транзакции может занять очень долгое время.
Если вы просто хотите заблокировать доступ к базе данных во время вашего процесса, вам лучше установить флаг в базе данных, а затем, если другие функции в вашем приложении не будут работать, если этот флаг установлен.
Область вашего приложения может повлиять на то, где хранится флаг; если у вас работает только один экземпляр, вы можете сохранить флаг в памяти, но если имеется несколько экземпляров, вам, вероятно, придется каждый раз проверять базу данных.