我正在尝试ECPG,因为我们计划从Ingres切换到Postgres。我们有多个C应用程序使用数据库中的DBEVENT触发不同的操作。
现在,我想使用Postgres函数LISTEN订阅数据库中的事件。而且我不知道如何使用它。
我知道我可以使用LISTEN函数从数据库中订阅特定频道,但是找不到有关如何实际捕获信息并将其用于C语言的任何解释。
EXEC SQL CONNECT TO :dbname USER postgres;
EXEC SQL LISTEN listener;
for(;;) {
//How do I catch when something happen here and print or save it?
}
如果ECPG无法实现,是否还有另一种方法可以在C语言中完成?