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

Вниз

Хранимые процедуры Interbase   Найти похожие ветки 

 
dimaL   (2007-08-01 11:11) [0]

Существует ли в ib возможность из хранимой процедуры послать сообщение клиенскому приложению(на подобии Raiserror в MsSql).


 
Сергей М. ©   (2007-08-01 11:32) [1]

Да, существует.

см. PSQL-предложение POST_EVENT


 
DrPass ©   (2007-08-01 11:33) [2]

Существует. Там несколько иной механизм, см. POST_EVENT


 
Сергей М. ©   (2007-08-01 11:33) [3]


> на подобии Raiserror в MsSql


В IB6 есть аналогичное по назначению PSQL-предложение EXCEPTION


 
Сергей М. ©   (2007-08-01 11:51) [4]


> dimaL   (01.08.07 11:11)


Основное отличие в поведении механизмов POST_EVENT и EXCEPTION состоит в том, что

- сообщение, отправляемое асинхронно при POST_EVENT, клиент получит не ранее чем подвердит ТА, в контексте которой им была вызвана к выполнению ХП (или в контексте которой сработал триггер)

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


 
stud ©   (2007-08-01 19:01) [5]

Сергей М. ©   (01.08.07 11:51) [4]
Основное отличие в поведении механизмов POST_EVENT и EXCEPTION состоит в том, что

а еще вроде эксепшн отсылается только тому, у кого оно "возникло".
а пост_ивент отсылается всем зарегистрированым на это событие


 
Сергей М. ©   (2007-08-03 09:07) [6]


> пост_ивент отсылается всем зарегистрированым на это событие


С какого перепугу ? "Все" это кто ?


 
PEAKTOP ©   (2007-08-03 10:31) [7]

> С какого перепугу ? "Все" это кто ?

"Все" - это все клиентские приложения (а также скрипты в рамках WEB-сервера), зарегистрировавшие себя на ожидание события.

в то время как EXCEPTION вылетает в рамках транзакции, вызвавшей его. Поэтому EXCEPTION видит только тот клиент, который стартовал эту транзакцию.



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

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

Наверх




Память: 0.48 MB
Время: 0.046 c
1-1190012673
Андрей Пл
2007-09-17 11:04
2007.12.09
Масштабирование в DBChart


6-1175622907
Tiberius
2007-04-03 21:55
2007.12.09
Где найти ieConst.pas и IEDocHostUIHandler.pas


2-1194794278
soj
2007-11-11 18:17
2007.12.09
Получить код символа запятой.


15-1194438356
werb
2007-11-07 15:25
2007.12.09
dll список функций


2-1194855331
art36
2007-11-12 11:15
2007.12.09
Как вырваться из локальной сети, используя indy или Socket?