有谁知道如何设置插入触发器,这样当从我的应用程序执行插入时,数据会被插入并且postgres返回,甚至在触发器完成执行之前?
答案 0 :(得分:6)
没有内置支持;你将不得不破解一些东西。选项包括:
在C,Perl或Python中编写触发器,让它启动一个单独的进程来执行您想要的操作。这可能会使您的数据库系统变得棘手并且可能稍微有点危险,并且仅当您想要执行的操作在数据库之外时才有效。
编写一个轻量级触发器函数,该函数仅将条目记录到日志或任务表中,并具有单独的作业或守护程序,可以按照自己的计划查看该表并从那里执行操作。这或多或少是斯洛尼的作用。
答案 1 :(得分:3)
问题是:你为什么需要它?触发器应该很快。如果你需要做一些复杂的事情,可以编写触发器,将通知发送到执行复杂部分的某个守护进程 - 例如使用PostgreSQL的LISTEN / NOTIFY功能。