powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Протокол ошибок на стороне сервера
3 сообщений из 3, страница 1 из 1
Протокол ошибок на стороне сервера
    #39396482
Джек
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый денгь всем!
Можно ли при обработке ошибки, в процедуре, записать информацию в другую таблицу?
Я пробовал вот так:
...
x=20/0;
when ANY do
begin
res_id=SQLCODE;
insert into otladka(fldtest,res) values('TEST_EXCEPTION','ошибка');
suspend;
end
В otladka ничего нет. По-видимому всё откатывается.
Заранее большое спаибо!
...
Рейтинг: 0 / 0
Протокол ошибок на стороне сервера
    #39396484
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДжекМожно ли при обработке ошибки, в процедуре, записать информацию в другую таблицу?

Можно, но ты выбрал неправильный способ возникновения ошибки или неправильную версию
сервера. Для 2.5 и 3.0 - используй автономную транзакцию.

А за suspend в обработчике when - отдельный эцих с гвоздями.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Протокол ошибок на стороне сервера
    #39396503
Джек
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо!
Сделал вот так:
...
x=20/0;
when ANY do
begin
res_id=SQLCODE;
in autonomous transaction
do
begin
insert into otladka(fldtest,res) values('TEST_EXCEPTION','ошибка');
end
suspend;
end
...
В otladka появилась запись.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Протокол ошибок на стороне сервера
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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