【问题标题】:Monitor data changes in SQL Azure监视 SQL Azure 中的数据更改
【发布时间】:2012-03-26 21:24:14
【问题描述】:
有没有办法在 SQL Azure 数据更改或插入新数据时获得通知?我想向 ASP.NET Web 应用程序发送通知并将通知推送到 Windows Phone。我知道 SqlDependency 类和查询通知用于监视 SQL Server 2008 数据库数据更改,但 SQL Azure 还不支持。
【问题讨论】:
标签:
asp.net
azure-sql-database
windows-phone
sqldependency
query-notifications
【解决方案1】:
很抱歉,除了滚动您自己的通知机制外,您没有其他可用选项。您可以执行此操作的方法之一是在要监视和测试字段级更新的表上创建触发器,将事件存储在辅助表中,并编写应用程序以特定频率读取这些事件。 COLUMNS_UPDATED function 可以帮助您确定哪些字段在触发器内发生了更改。
【解决方案2】:
可能对您有用的一个选项是使用像 Aditi Scheduler 这样的 cron 服务。您可能实现此目的的方法是拥有一些服务 URL,当调用该服务 URL 时会调用您的 SQL Azure db 以检测是否插入了新数据,然后在有新数据时发送通知。然后,您将配置 Aditi 调度程序以每 10 分钟调用一次此服务端点。如果您使用 Aditi 调度程序调用您的服务的频率不超过每 10 分钟一次,它将是免费的(我相信)。