2011-10-20 15 views
5

delphi 7 y mssql 2008 son requisitos que no puedo cambiar para un nuevo proyecto Estoy empezando a trabajar y si es posible me gustaría recibir notificaciones/eventos si los datos cambian en el servidor, así que no tengo que sondear entonces la pregunta es:¿Cómo usar SQLServer Service Broker/SQLNotifications con Delphi7?

¿es posible utilizar SQLService Broker con D7 o hay algo similar (estaba leyendo/pensando en crosstalk y ado.net pero el soporte solo comienza en D2007)?

Actualización: sólo para estar absolutamente claro, quiero ser capaz de obtener un evento si de datos cambia en ciertas tablas y no si un cambio de mesa/base de datos (por ejemplo, insertar/actualizaciones en tablas específicas.).

Respuesta

4

Sí, es posible usar delphi para acceder a las notificaciones y eventos expuestos por MSSQL Service Broker. Para hacer esto, puede usar el WMI Provider for Server Events que expone un conjunto muy rico de eventos y clases de WMi. Si es nuevo en WMI, le recomiendo que lea estos artículos Accesing the WMI from Object Pascal Code y Delphi and WMI Events, también puede usar WMI Delphi Code Creator para crear un fragmento de Delphi para acceder a los eventos del MSSQL Service Broker.

+0

thx, intentaré mañana cuando estoy de vuelta en la oficina – pastacool

+0

hola un poco para digerir – pastacool

+0

hola, después de leer tanto como pude, y por lo que entiendo ahora, me parece que con WMI Provider no se puede obtener aunque los datos cambien en una tabla específica (por ej., update tab1 set mod_date = getdate() donde id = 1) pero solo si las tablas cambian (por ejemplo, alter tab1 add newcol int). – pastacool

Cuestiones relacionadas