powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / ODBC Error в batch-е (BEGIN; .... COMMIT;)
1 сообщений из 1, страница 1 из 1
ODBC Error в batch-е (BEGIN; .... COMMIT;)
    #35742555
assa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кто подскажет, как ведет себя постгрес при возникногвении ошибки в батче SQL стейтментов?

например просылаю батч
Код: plaintext
1.
2.
3.
4.
BEGIN;
SELECT myhp1();
SELECT myhp2();
SELECT myhp3();
COMMIT;
через ОДБС. Ошибки не возникает, все отрабатывает.
Код: plaintext
1.
2.
3.
4.
5.
BEGIN;
SELECT myhp1();
SELECT myhp2();
SELECT myhp3();
SELECT * FROM "NOTHING";
COMMIT;
- ODBC-error - "нет такой реляции "NOTHING". все хорошо (весь батч распознан как ошибочный)
Код: plaintext
1.
2.
3.
4.
5.
BEGIN;
SELECT myhp1();
SELECT myhp2();
SELECT myhp3();
SELECT myhp4();--от юзера не имеющего прав на myhp4()
COMMIT;
- ошибки не возникает, но при следующем вызове в том же соединении скажем
Код: plaintext
SELECT 'test conntction';
возникает ошибка "незакрытой транзакции" (то же можно получить в пг-админе, пытаясь выполнить ошибочный батч в его окне - до явно посланного ролбека не позволит выполнять отедльные стейтменты после попытки прослать ошибочный внутре батч, с явно прописанным в конце коммитом).
пытаюсь получить таки эту ошибку, прослав явно еще раз
Код: plaintext
COMMIT;
- нет ошибки!

какое-то издевательство, :0).
на вскидку казалось бы, поскольку в батче явно объявлен коммит, и он явно ошибочен - батч должен возвращать ошибку... Причем ошибку внятную. Ан нет.
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / ODBC Error в batch-е (BEGIN; .... COMMIT;)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]