Прослушиватель изменения данных при выборе результата с помощью jaybird

#java #listener #firebird #jaybird

#java #прослушиватель #firebird #jaybird

Вопрос:

Знаете ли вы, есть ли способ использовать прослушиватель данных при запросе выбора с помощью jaybird.

Например, у меня есть запрос типа

 select count (*) from my_table where my_statut='x'
  

результат дает мне 50.

Мое приложение изменяет поле my_statut на 'y' для одной строки, есть ли способ перехватить новый результат с помощью прослушивателя изменения значения / данных в Java?

Спасибо за вашу помощь.

Саймон

Ответ №1:

Это возможно через триггер и event api. Взгляните на ГЛАВУ 8 этого руководства http://www.firebirdsql.org/file/documentation/drivers_documentation/Jaybird_2_1_JDBC_driver_manual.pdf

Комментарии:

1. спасибо за ваш ответ, я попробую это, я думаю, это именно то, что я хотел 🙂

Ответ №2:

Нет, это невозможно. Как только результирующий набор создается запросом, он фиксируется и не будет меняться (за исключением изменений, внесенных самой программой в результирующий набор с возможностью ОДНОВРЕМЕННОГО обновления), также — в зависимости от точной конфигурации транзакции — вы не сможете увидеть никаких изменений, внесенных в другие транзакции.

Если вашему приложению необходимо быть в курсе изменений, вы могли бы изучить механизм событий, предоставляемый Firebird и Jaybird.