Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.05.10;
Скачать: CL | DM;

Вниз

Constraint, Transaction, Exception   Найти похожие ветки 

 
Drowsy   (2008-09-04 14:25) [0]

Можно на сервере в тригере BIO перехватывать внутренние исключения, вызываемые Constraint-ами или нарушениями ссылочной целостности (чтобы эаменить созданными с понятной диагностикой)?
Почему не работает, например :

/* Trigger: LOT_AI0 */
CREATE TRIGGER LOT_AI0 FOR LOUT
ACTIVE BEFORE INSERT POSITION 0
AS
begin
if( gdscode = 335544558) then exception my_exception  ;
when any do exception my_exception  ;
end
^


 
Виталий Панасенко(дом)   (2008-09-04 14:29) [1]

а не пробовал AFTER? видимо, еще ничего не нарушилось ДО вставки, потому и не срабатывает


 
Drowsy   (2008-09-04 14:36) [2]

Попробовал AFTER.
Всё равно не перехватывает стандартные исключения. :(


 
Johnmen ©   (2008-09-04 14:41) [3]

А у тебя и нет исключений в триггерах - перехватывать нечего.
На тему русификации сообщений сервера читай http://www.ibase.ru


 
Drowsy   (2008-09-04 14:51) [4]

Johnmen, я там смотрел, не нашёл такого раздела.
Плиз, если можешь, укажи точнее, где!!!


 
Johnmen ©   (2008-09-04 15:04) [5]


> Drowsy   (04.09.08 14:51) [4]

Там есть поиск.
Ключевые слова сообщения об ошибках русский например...


 
Drowsy   (2008-09-04 15:31) [6]

Нет там ничего...
Люди - человеки, где и как на сервере перехватывать исключения,  вызываемые Constraint-ами ? Может примеры или толковые ссылки есть?


 
Правильный$Вася   (2008-09-04 15:35) [7]


>  где и как на сервере перехватывать исключения,  вызываемые
> Constraint-ами

с какой целью?


 
Drowsy   (2008-09-04 15:38) [8]

чтобы эаменить своими, с понятной пользователю, диагностикой


 
Правильный$Вася   (2008-09-04 15:53) [9]

диагностика на уровне таблиц яйца выеденного не стоит
имеет смысл диагностика на уровне транзакций
тогда оберни транзакцию в ХП, а там поставь обработчики в begin-when-end


 
Drowsy   (2008-09-04 15:58) [10]

Что значит "транзакцию в ХП"?


 
Правильный$Вася   (2008-09-04 16:00) [11]

это значит, что если тебе нужно делатьмного операций с данными в рамках транзакции, то засунь все эти операции в ХП и вызывай ее, а диагностику уже в ней можешь делать и сразу же реагировать корректно в ней же - или подымать исключение в программу, или исправлять что-то на лету (в секции when) с повторной попыткой


 
Drowsy   (2008-09-04 16:11) [12]

Ага, вроде понял. Попробую чичас.
Спасибо, Правильный$Вася!



Страницы: 1 вся ветка

Текущий архив: 2009.05.10;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.011 c
15-1235989762
Real
2009-03-02 13:29
2009.05.10
Форум и робот-хакер


15-1235938698
TInt
2009-03-01 23:18
2009.05.10
Можно ли сделать чтоб класс менял размер массива не зная его типа


9-1179342614
Mr.Vlad
2007-05-16 23:10
2009.05.10
Проблемы с TGA


2-1238399050
Darvin
2009-03-30 11:44
2009.05.10
GetInterface и возврат интерфейсов


2-1238240264
Showmessage
2009-03-28 14:37
2009.05.10
Использование БД