Asp.net 資料庫快取依賴(SQLServer 2005)
1. 檢測是否已經啟用Service Broker
Select DATABASEpRoPERTYEX('資料庫名稱','IsBrokerEnabled') -- 1 表示已經啟用 0 表示沒有啟用
2. 啟用Service Broker
Alter database 資料庫名稱 set ENABLE_BROKER;
3. vs2005中啟用數據庫緩存依賴
aspnet_regsql.exe -S localhost -U sa -P sa -d database -ed
aspnet_regsql.exe -S localhost -U sa -P sa -d database -t table –et
可以通過aspnet_regsql -?檢視命令
4. Gload.asxm中配置
void Application_Start(object sender, EventArgs e)
{ // 在應用程式啟動時執行的程式碼
System.Data.SqlClient.SqlDependency.Start(ConnectionString);
}
void Application_End(object sender, EventArgs e)
{// 在應用程式關閉時執行的程式碼
System.Data.SqlClient.SqlDependency.Stop(ConnectionString);
}
5. Web.config中配置(不是必須的)
6. 應用程式資料快取中使用
SqlCommand cmd = new SqlCommand(sql,conn);
SqlCacheDependency scd = new SqlCacheDependency(cmd); 說明:這條語句最好在cmd執行操作之前執行,如
SqlCacheDependency scd = new SqlCacheDependency(cmd); 或command.ExecuteReader();等語句前
Cache.Insert(...,scd,...);
注意:
a). 必須設定完全限定名稱的資料表。即表名前面需要加所有者,如dbo.test。
b). 必須明確設定所訪問資料庫列名稱,不能使用“*”。
c). 必須保證不是聚合函式。如COUNT、MAX等。
7. 解決SqlServer啟用資料表快取信賴,非dbo構架的資料表註冊不成功的問題
問題提示:
無法對觸發器 'dbo.Production.Product_AspNet_SqlCacheNotification_Trigger' 執行建立,因為其架構不同於目標表或檢視的架構。在快取依賴項註冊期間失敗。
請確保資料庫名稱和表名稱有效。表名稱必須符合 SQL 中規則識別符號的格式。
失敗的 SQL 命令是: dbo.AspNet_SqlCacheRegisterTableStoredProcedure
方法:
1.開啟當前資料庫,在儲存過程列表中找到名稱為[dbo].[AspNet_SqlCacheRegisterTableStoredProcedure] 的儲存過程並開啟。
2.將該儲存過程內容的 SET @fullTriggerName = 'dbo.[' + @triggerName + ']' 修改為 SET @fullTriggerName = '[dbo.' + @triggerName + ']'。
3.執行該儲存過程,然後重新建立資料表的快取依賴(執行3中的語句),建立成功!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-625603/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- sqlserver讀取oracle資料庫資料SQLServerOracle資料庫
- 獲取SqlServer 2005中欄位的備註資訊SQLServer
- 如何使用yii2的快取依賴特性快取
- SqlServer 2005 TriggerSQLServer
- ASP.NET Core依賴注入(DI)ASP.NET依賴注入
- ASP.NET Core 依賴注入(DI)ASP.NET依賴注入
- ASP.NET Core - 依賴注入(三)ASP.NET依賴注入
- ASP.NET Core - 依賴注入(二)ASP.NET依賴注入
- ASP.NET Core - 依賴注入(一)ASP.NET依賴注入
- ASP.NET Core - 依賴注入(四)ASP.NET依賴注入
- sql server 2005資料庫快照SQLServer資料庫
- Spring如何使用三級快取解決迴圈依賴Spring快取
- 【spring原始碼】十、AOP迴圈依賴、三級快取Spring原始碼快取
- Spring 迴圈依賴的三種方式(三級快取解決Set迴圈依賴問題)Spring快取
- Python操作Redis快取資料庫PythonRedis快取資料庫
- ASP.NET Core 依賴注入基本用法ASP.NET依賴注入
- ASP.NET Core 中的依賴注入ASP.NET依賴注入
- 【資料庫資料恢復】SqlServer資料庫無法讀取的資料恢復案例資料庫資料恢復SQLServer
- 資料庫系統------函式依賴與正規化資料庫函式
- Spark RDD詳解 | RDD特性、lineage、快取、checkpoint、依賴關係Spark快取
- 快取淘汰、快取穿透、快取擊穿、快取雪崩、資料庫快取雙寫一致性快取穿透資料庫
- Redis快取資料庫-快速入門Redis快取資料庫
- ASP.NET Core 依賴注入中的ScopeASP.NET依賴注入
- ASP.NET WebApi + Autofac 實現依賴注入ASP.NETWebAPI依賴注入
- [KubernetesClient | 底層依賴庫]client
- 不要依賴Mock庫 - ErwinMock
- sqlserver2005預編譯SQLServer編譯
- 使用Redis和Java進行資料庫快取 - DZone資料庫RedisJava資料庫快取
- SQLServer批量新增資料庫SQLServer資料庫
- 分散式快取--快取與資料庫一致性方案分散式快取資料庫
- 究竟先操作快取,還是資料庫?快取資料庫
- ASP.NET Core依賴注入初識與思考ASP.NET依賴注入
- asm磁碟組依賴導致資料庫自啟動報錯ASM資料庫
- python 介面自動化 -- 依賴資料Python
- IceRPC之依賴注入>快樂的RPCRPC依賴注入
- jmeter 連線 sqlserver 資料庫JMeterSQLServer資料庫
- SQLSERVER 資料庫效能的基本SQLServer資料庫
- Android連線資料庫sqlserverAndroid資料庫SQLServer
- 用於Electron/Nodejs的資料持久快取庫NodeJS快取