SQL Server 2005實現資料庫快取依賴
使用方法和步驟如下:
step1
檢測是否已經啟用ServiceBroker,檢測方法:
SelectDATABASEpRoPERTYEX('資料庫名稱','IsBrokerEnabled') |
--1表示已經啟用0表示沒有啟用
step2
如果ServiceBroker沒有啟用,使用下面語句啟用:
ALTERDATABASE資料庫名稱SETENABLE_BROKER;
step3
在實現基於服務的SQL資料快取依賴過程中,需要顯式呼叫SqlDependency.Start來啟動接受依賴項更改通知的偵聽器。
SqlDependency.Start(connectionString);//推薦將這段程式碼加到Global.asax的Application_Start方法中 |
step4
該步驟分別有兩種不同的做法。該階段必須注意步驟。
方法A:建立連線物件,再建立一個SqlCommand例項,建立SqlCacheDependency例項,在這步之後再呼叫Command物件來獲取資料(這個順序很重要)。之後呼叫Cache的Insert語句建立一個依賴於一個具體查詢資料集的Cache項。
SqlConnectionconn=newSqlConnection(strConnection); |
方法B:建立連線物件,再建立一個SqlCommand例項,最後建立SqlDependency例項。定義SqlDependency的委託OnChange,當資料發生改變時做出相應的處理(比如清除Cache)。
SqlConnectionconn=newSqlConnection(strConnection); |
注意事項:
不知道是不是還存在BUG,我在專案開發中遇到一些奇怪的現象。同樣的程式碼,在有的機器上執行則能捕捉到變化,有的則完全沒反應;也有時會出現Cache剛建立就反覆發生依賴改變的事件。偶爾Cache還會資料發生變化卻不引發事件。
但從最終專案實施的情況看,似乎都只是某些機器環境造成的不確定因素?這個無法確定。不過起碼資料庫端是否正常啟用,可以通過SQLServerProfiler來檢視監視。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16436858/viewspace-598265/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SQL Server 2005 實現資料庫快取依賴的實現步驟整理SQLServer資料庫快取
- SQL Server2005 實現資料庫快取依賴的實現步驟整理SQLServer資料庫快取
- Asp.net 資料庫快取依賴(SQLServer 2005)ASP.NET資料庫快取SQLServer
- 快取依賴(檔案、資料庫)快取資料庫
- ASP.NET的快取依賴機制-SQL快取依賴篇ASP.NET快取SQL
- sql server 2005資料庫快照SQLServer資料庫
- 在SQL Server 2005資料庫中實現自動備份SQLServer資料庫
- [VUE]computed屬性的資料響應和依賴快取實現過程Vue快取
- Sql Server 2005資料庫分割槽SQLServer資料庫
- sql server 2005資料庫載入SQLServer資料庫
- [zt SQL Server2005複製功能實現與Oracle資料庫同步SQLServerOracle資料庫
- SQL Server資料庫實現負載均衡SQLServer資料庫負載
- 爛泥:SQL Server 2005資料庫安裝SQLServer資料庫
- 系統快取全解析5:檔案快取依賴快取
- 學習SQL 快取依賴的筆記(比較初級)SQL快取筆記
- 在 SQL Server 2005 中使用表值函式來實現空間資料庫SQLServer函式資料庫
- SQL Server資料庫的簡單實現方法SQLServer資料庫
- SQL Server 2005資料頁讀取--高階掃描SQLServer
- 【資料庫之函式依賴】資料庫函式
- 如何建立和還原SQL Server 2005資料庫?SQLServer資料庫
- 在 SQL Server 2005 中配置資料庫郵件SQLServer資料庫
- SQL如何實現查詢節點依賴SQL
- 資料快取的實現快取
- 匯出Sql server 2005資料庫中某表的資料SQLServer資料庫
- SQL Server連線VFP資料庫的實現 (轉)SQLServer資料庫
- SQL Server連線ACCESS資料庫的實現 (轉)SQLServer資料庫
- SQL Server 2005無日誌檔案附加資料庫SQLServer資料庫
- SQL Server 2005 自動遠端資料庫備份SQLServer資料庫
- SQL Server 2005資料庫中表的遞迴查詢SQLServer資料庫遞迴
- 深入講解SQL Server 2005資料庫中的SMOSQLServer資料庫
- SQL Server 2005 在區域網中共享資料庫SQLServer資料庫
- SQL Server 2005資料庫IN運算的一個錯誤SQLServer資料庫
- SQL Server 2005資料庫日誌丟失的恢復SQLServer資料庫
- 查詢SQL Server 2005資料庫重做日誌的資訊SQLServer資料庫
- 如何使用yii2的快取依賴特性快取
- iOS實現依賴注入iOS依賴注入
- SpringBoot 整合 Quartz 實現依賴資料庫資料動態設定定時任務Spring Bootquartz資料庫
- 分析資料庫的依賴關係(轉)資料庫