Пока что ваше пожелание ничем ни отличается от "стартовал — открыл соединение + открыл транзакцию, висишь idle in transaction, закоммитил и закрыл соединение". В чём будет положительная разница для пользователя?
P.S. Если вы скажете "не надо открывать соединение", то я попрошу расписать плюсы этого и т.д. пока не скажете очень конкретные плюсы
Я бы тоже так подумал увидев IMMEDIATE | DEFERRED и не найдя момента когда от последнего отказались, а найти этот момент за полчаса чтения мне не удалось.
Что-то подобное на первый, наивный, взгляд хорошо для банковских транзакций, например, выдача денег в банкомате которая может и на минуту растянуться и держать соединение ради этого банкомата никто не будет. Правда чуть позже увидишь, что нужно несколько коротких транзакций и журналирование каждого действия.
Никак. Но если в банкомат воткнуть две симки и потребовать, чтобы выдача денег не ломалась при падении одного из операторов сотовой связи, то как раз возникнет задача "транзакции не привязанной к соединению". Повторюсь, правильное решение - это отказ от длинных транзакций, а не отвязка транзакции от соединения.
И это тоже правильный вопрос. Впрочем, api, если оно не умеет держать соединение с клиентом-банкоматом, тоже добавит желания отвязать транзакцию от соединения с базой.
Hello! As I do not speak Russian, I would like to ask help in English. So, I have used the query from https://tomroth.com.au/sql-stats/ for calculating summary statistics. But I meet an error, can anybody guide me for solvin this