Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Извещение программы о сработке триггера

12K
02 мая 2007 года
dark_n
9 / / 14.02.2006
Как сделать чтобы база данных(postgresql или mssql) извещала о добавленной строке в таблице и оперативно считывать посл. строчку. Т.е. я думаю нужно написать триггер.А вот как моя программа узнает что сработал триггер?
Мона постоянно слать запросы к базе,но как то не хочется.
303
02 мая 2007 года
makbeth
1.0K / / 25.11.2004
Стандартный (реализованный базой даных) метод есть только вроде у InterBase. Придется делать ручками.
Вот один из вариантов: В бд создается таблица, куда пишется последняя операция (например, какая таблица была изменена). Далее, триггер вызывает внешнюю функцию, которая реализуется с помощью DLL. В данной функции взводится глобальное системное событие (event). В свою очередь, программа отслеживает данное событие, и при его возникновении выполняет запрос к таблице изменений БД. Соответственно, для клиент-сервера надо будет писать сервис, который следил бы за изменениями в БД и сообщал бы о них клиентам (например, с помощью сокетов).
В общем все это довольно геморно. Проще делать рефреш через заданный интервал времени...
273
05 мая 2007 года
3A3-968M
1.2K / / 22.12.2005
Неа, не проще - рефрешь повесит производительность.... есть решение, но только для MS SQL Server 2005 - для таблиц можно писать триггеры на языке C#, т.е. компиллируется отдельно сборкас методами, далее скриптом регистрируется триггер, который вызывает управляемый код в сборке... если нужна подробная реализация, оформим))
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог