Reputation: 1816
We have client - server application, where client is built in Delphi XE4 and server uses SQL Server 2012 Express edition. Can my delphi application (using WMI for server events) receive data change notifications from Express edition?
The documentation says that Express edition supports service broker as "Client Only".
Is it possible to achieve the above functionality using Express edition with out the help of any other sql server edition in between.
Upvotes: 4
Views: 1640
Reputation: 294307
Yes, you can. Query Notifications and SQLDependency are fully functional in Express editions. Working with Query Notifications explains how to use Query Notifications directly from OleDB (via SSPROP_QP_NOTIFICATION_TIMEOUT
, SSPROP_QP_NOTIFICATION_MSGTEXT
and SSPROP_QP_NOTIFICATION_OPTIONS
) and from ODBC (via SQL_SOPT_SS_QUERYNOTIFICATION_TIMEOUT
, SQL_SOPT_SS_QUERYNOTIFICATION_MSGTEXT
and SQL_SOPT_SS_QUERYNOTIFICATION_OPTIONS
). I don't know if Delphi exposes Query Notifications at higher level or you would have to code against low level ODBC or OLEDB. The really usable options are exposed via managed driver in C# et all, via SQLDependency
class.
I see in the link MartynA posted the XE8 supports Query Notifications. It should work with Express.
The 'client only' restriction for Express refers strictly to Service Broker remote communications (exchanging messages between SQL Server instances), a capability not needed for Query Notifications.
Upvotes: 2
Reputation: 713
You cannot use this feature with only Express edition.
You need at least Standard Edition to get the SQL Server Service Broker backend up and running. Once you have one Standard editon instance other Express edition instances can participate.
Upvotes: 0