天儿真好,
是否有人能够提供一些指示,告诉我如何通知我的Delphi应用程序MySQL数据库中的特定记录已更改? Interbase的事件系统是什么?
我看过的想法:
:Q4M :. (http://q4m.31tools.com/)
优点:本机MySQL解决方案不需要外部守护进程 缺点:由于使用特定于Linux的Posix调用
,因此不存在Win32构建:MySQL Message API :. (http://messagequeue.lenoxway.net/)
优点:强大(使用spread.org) 缺点:没有Win32二进制文件。需要spread.org的其他配置和守护程序
:自定义用户定义函数:。
我正在尝试编写一个可以使用Win32 API PostMessage()的UDF,因此将一条Windows消息发送到一个简单的套接字服务器。
优点:与MySQL集成(尽管具有外部DLL依赖性)。可以根据我的需求定制 缺点:我无法让它发挥作用(见帖子MySQL User Defined Function to send a windows message)。这可能是因为MySQL作为服务运行
任何指针,想法等都非常感激。
- d
答案 0 :(得分:3)
作为一种选择,您可以考虑使用像RemObject DataAbstract或kbmMW这样的中间层解决方案。 AFAIK,它们允许跟踪中间层的变化,并提供通知客户的机制。
答案 1 :(得分:2)
我最终实现如下:
运行良好,明智的重量轻(因为客户只需刷新他们需要的东西)。同时将TCP服务器与数据库保持在同一台机器上并使用Windows管道意味着管道可以保持打开状态,并且通过写入管道,不会有TCP堆栈开销。表示mySQL上的负载和执行UDF所花费的时间非常小。