【IT168 技术文档】SQL SERVER 2005内置支持SQL数据缓存依赖,内置通知传递服务,能够提供更小粒度的数据更改监测,使用和配置简单。使用方法和步骤如下:
step1 检测是否已经启用Service Broker,检测方法:
Select DATABASEpRoPERTYEX('数据库名称','IsBrokerEnabled') -- 1 表示已经启用 0 表示没有启用
step2 如果Service Broker没有启用,使用下面语句启用:
ALTER DATABASE 数据库名称 SET ENABLE_BROKER;
step3 在实现基于服务的SQL数据缓存依赖过程中,需要显式调用SqlDependency.Start来启动接受依赖项更改通知的侦听器。
SqlDependency.Start(connectionString); //推荐将这段代码加到Global.asax的Application_Start方法中
SqlDependency.Stop(connectionString); //用于关闭,可加在Global.asax的Application_End方法中
SqlDependency.Stop(connectionString); //用于关闭,可加在Global.asax的Application_End方法中
step4 该步骤分别有两种不同的做法。该阶段必须注意步骤。
方法A:建立连接对象,再创建一个SqlCommand实例,创建SqlCacheDependency实例,在这步之后再调用Command对象来获取数据(这个顺序很重要)。之后调用Cache的Insert语句建立一个依赖于一个具体查询数据集的Cache项。