如何在Delphi7中使用SQLServer Service Broker/SQLNotifications?

pas*_*ool 5 delphi delphi-7 sql-server-2008

delphi 7和mssql 2008是我无法为新项目改变的要求我开始工作,如果可能的话,如果服务器上的数据发生变化,我想得到通知/事件,所以我不需要轮询所以问题是:

是否可以在D7中使用SQLService代理或是否有类似的东西(正在阅读/思考串扰和ado.net,但支持仅在D2007开始)?

更新:为了绝对清楚,我希望能够在某些表中的数据发生更改时获得事件(例如,在特定表上插入/更新),而不是在表/数据库发生更改时.

RRU*_*RUZ 4

是的,可以使用 delphi 访问 MSSQL Service Broker 公开的通知和事件。为此,您可以使用它WMI Provider for Server Events公开一组非常丰富的 WMi 事件和类。如果您是 WMI 新手,我建议您阅读这些文章Accesing the WMI from Object Pascal Code,并且 Delphi and WMI Events您还可以使用WMI Delphi Code Creator创建 Delphi 代码片段来访问MSSQL Service Broker.