使用NHibernate,我如何檢查我正在執行的查詢是否已經存在於查詢緩存中,或者不是以編程方式?如何檢查查詢緩存中是否存在查詢?
1
A
回答
1
看看http://msdn.microsoft.com/en-us/library/ms174283.aspx。該物品具有檢索特定查詢的查詢計劃(第「A.從計劃緩存中清除查詢計劃」)的樣本:
SELECT plan_handle, st.text
FROM sys.dm_exec_cached_plans
WHERE text LIKE N'SELECT * FROM Person.Address%';
然而,這並沒有集成到NHibernate的,你將不得不知道您的查詢的SQL代碼。
0
一個簡單的方法是拋出SQL Profiler。如果您看到查詢觸及數據庫,那麼它不在緩存中。
+0
不錯的想法,但我的意思是如何以編程方式做到這一點。 – 2010-11-07 13:26:46
相關問題
- 1. 如何檢查在Django的緩存查詢列中是否存在值?
- 2. 檢查查詢是否存在並獲得結果(1查詢)
- 3. 如何在查詢中使用HQL檢查對是否存在?
- 4. 如何檢查SQL子查詢中是否存在字段?
- 5. 如何查詢APIGee緩存
- 6. 如何緩存Mongodb查詢?
- 7. 在SQLite中查詢緩存
- 8. 在Django中緩存查詢
- 9. 在Jooq中緩存查詢
- 10. 如何查看存儲在查詢緩存中的哪些MySQL查詢?
- 11. 如何檢查MySQL搜索JOIN查詢時是否存在行?
- 12. 如何檢查查詢字符串是否已經存在
- 13. 如何檢查一個查詢是否存在多個值
- 14. 如何查詢postgreSQL數據庫來檢查值是否存在?
- 15. 如何檢查結果是否存在陣列查詢
- 16. 是否可以緩存查詢的ColdFusion查詢
- 17. 查詢hstore是否存在?
- 18. 如何檢測原則查詢是否來自緩存?
- 19. 是否需要緩存貓鼬查詢?
- 20. 是否可以查詢谷歌緩存
- 21. 我的查詢是否被緩存?
- 22. 如果是,請檢查是否存在查詢 - 刪除
- 23. 緩存SQL查詢
- 24. Magento查詢緩存
- 25. SQL查詢緩存
- 26. 查詢緩存mysql
- 27. 緩存查詢cakephp
- 28. MySQL查詢緩存
- 29. 查詢緩存或
- 30. NHibernate緩存查詢
高級緩存的重點在於它們是透明的。 – 2010-11-07 13:23:15
@Diego:我有函數A(),當它在一個非緩存查詢上被調用將需要很長的時間,但有一個非常有效的方式來訪問緩存。另一方面,我有函數B()從數據庫加載更快(從而保存查詢緩存),但不從緩存中獲取。所以我需要知道它是否已被緩存。 – 2010-11-07 13:30:04
如果您需要這種細粒度控制,請手動使用底層緩存而不是查詢緩存。 – 2010-11-07 13:58:34