是否有可能以編程方式獲取LINQ to SQL或ADO.NET Query的執行計劃以顯示調試信息?如果是這樣,怎麼樣?如何使用LINQ to SQL/ADO.NET獲得執行計劃
回答
當然,有2件事情你需要。
定製實現DbConnection
,DbCommand
和DbDataReader
。你可以使用它來攔截所有發送到數據庫的SQL。你基本上已經設置好了,所以你有一個記錄所有運行的SQL的層。 (我們計劃在未來幾個月內在此領域開源,敬請關注)
一種顯示數據構成方式的方法,這種情況在此處是開源的:http://data.stackexchange.com/stackoverflow/s/345/how-unsung-am-i(請參閱包含執行計劃選項)
另一種方法是通過查看proc緩存來做事後診斷。 sys.dm_exec_query_stats包含可以擴展的緩存計劃句柄。
爲開源exec計劃顯示提供鏈接? – 2011-05-15 02:50:15
@Chad肯定... http://data.stackexchange.com/about – 2011-05-15 04:54:47
謝謝,很有幫助。 :d – 2011-05-15 14:08:39
- 1. 如何獲得一份聲明中工作的執行計劃?
- 2. 執行計劃
- 3. 無法獲得使用LINQ to XML
- 4. 執行合併使用LINQ to SQL
- 5. LINQ to XML - 如何獲得索引
- 6. 如何獲得LINQ To SQL輸出?
- 7. 如何執行此Linq-to-Sql連接?
- 8. Linq to SQL如何執行DeleteAllOnSubmit?
- 9. Linq-to-SQL:如何對子選項執行計數
- 10. Oracle執行計劃
- 11. 執行MySQL計劃?
- 12. 如何獲得使用LINQ to Entities的字節數組長度?
- 13. 如何獲得使用Linq to SQL的列名稱列表
- 14. 從執行計劃
- 15. 如何使用LINQ to SQL執行CROSS JOIN?
- 16. 在LINQ to SQL中,如何使用max執行子查詢?
- 17. Linq-to-SQL執行NonQuery
- 18. 如何獲得postgresql中正在運行的查詢的執行計劃?
- 19. 如何使用C#從SQL Server獲取預計的執行計劃?
- 20. 執行計劃重用
- 21. SQL執行計劃
- 22. Maven執行計劃
- 23. SQL Server捕獲執行計劃
- 24. 如何使用可執行jar運行彈簧計劃任務
- 25. sp_executesql使用錯誤的執行計劃
- 26. 每月使用SQL計劃執行SSIS
- 27. 使用LINQ to XML獲取XML值使用LINQ to XML
- 28. 如何獲得'留在計劃中
- 29. 計劃執行程序的計劃方法只執行一次
- 30. 您如何計劃Windows Workflow的執行?
我不知道LINQ的具體情況,但這是一個以編程方式獲取查詢計劃的解決方案。要爲LINQ做同樣的事情,似乎你必須大量修改生成的文件。應該可行,複雜但可行。 http://social.msdn.microsoft.com/Forums/en-US/sqldatabaseengine/thread/aaf5e9c9-a222-414a-baed-5c0adcc329e2 – RThomas 2011-05-12 15:57:12
你完成了嗎?如果您可以在某個時候發佈帖子,我很樂意看到解決方案。 – RThomas 2011-05-14 05:42:33