delphi 7和mssql 2008是我无法为新项目改变的要求我开始工作,如果可能的话,如果服务器上的数据发生变化,我想得到通知/事件,所以我不需要轮询所以问题是:
是否可以在D7中使用sqlService代理或是否有类似的东西(正在阅读/思考串扰和ado.net,但支持仅在D2007开始)?
更新:为了绝对清楚,我希望能够在某些表中的数据发生更改时获得事件(例如,在特定表上插入/更新),而不是在表/数据库发生更改时.
解决方法
是的,可以使用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的事件.