2009-07-29 57 views
5

是否有任何工具可以檢查asp.net或sql server並報告所有針對數據庫運行的查詢?我問的原因是我正在使用Linq進行一個項目,並且想仔細檢查每個頁面實際上做了些什麼。有什麼工具可以查看針對數據庫運行的查詢嗎?

理想情況下,我希望在瀏覽器中查看頁面並獲得運行的所有查詢的報告以創建該頁面。

我知道我可以使用調試/斷點查看它針對單個查詢運行的SQL,並且我知道LinqPad,但是我擔心Linq會自行創建更多的查詢來獲取我可能不是的相關數據直接意識到。有什麼(工具/程序/報告/等)像我所描述的?謝謝!

編輯:有沒有免費工具可以做到這一點?我正在使用Sql Server 2008 Express,不幸的是沒有SQL Profiler。

回答

14

絕對有一個叫做SQL Profiler的SQL工具。它確實需要提升數據庫權限才能運行分析器。

有一個體面的教程,如何運行Profiler TechRepublic

另一個選項是NHibernate Profiler。我知道它不像SQL Profiler那樣「免費」,從來沒有使用它,但它的屏幕截圖看起來很酷。

3

分析器是他們所有這一切的最佳工具,但它可能是昂貴的經驗不足的手中。

您也可以嘗試做「EXEC sp_who的」,然後是「DBCC INPUTBUFFER(111)」 - 只是把進程ID在111

1

的地方由於您使用的SQL Server Express,怎麼樣這個工具?

Profiler for Microsoft SQL Server 2005/2008 Express Edition

的Microsoft SQL Server系列包括 免費的Express版,這是完全 功能,但有一些令人失望的 其限制從 在發展過程中 使用它阻止。其中之一是缺少 分析工具,不包括標準SQL分析器 。但是,現在您有 可以使用快速版 調整您的系統。 SQL Server Express 版Profiler提供了 功能標準分析器的大部分功能, 如選擇事件到配置文件, 設置過濾器等。現在有 沒有模擬免費工具。

Download Here

1

登錄LINQ到SQL ASP.NET查詢一個快速和骯髒的方法是這樣的(假設Northwind.Dbml):

NorthwindDataContext context = new NorthwindDataContext(); 
context.Log = Response.Output; 

這將寫入所有查詢的響應流。討厭的,但方便的即時滿足,而不需要調試器或分析器等。

0

這是一個免費的前45天,但它給你運行時分析/記錄一堆過濾器選項,SQL Server查詢執行計劃日誌記錄等。專門爲剖析L2S應用程序而構建:

http://www.huagati.com/L2SProfiler

相關問題