我在某个表中创建了触发器,目的是在该表插入新的数据后有触发事件,这步没问题,一切正常。
现在有新的需求,要求触发器处理事件中能够主动与应用进行通信,即当表有新的数据插入时,MySQL能够主动通知应用。
我知道在Oracle中有类似管道的东西可以实现,不知道在MySQL中该如何实现,请大虾帮忙!谢谢!

解决方案 »

  1.   

    我以前用的 mysql干脆不支持触发器,都是外挂监视来实现的。
    然后可以通过 内存共享,或者是 状态文件共享来进行通信。我是这么弄的。
      

  2.   

    简单搞一个表,一个字段 TINYINT型,一条记录,如果有新的记录,就插一条记录到新表中去。然后写脚本查询这个小表,如果有记录,就通知应用程序,然后删除掉这条记录。
      

  3.   

    有一个思路,可以一试,
    使用C写一个扩展的存储过程,这个过程实现到你的应用端的message通信,
    在你的触发器里,主动调用这个存储过程,即可。前提是你的应用端有一个线程始终监听那个message通信的socket。