2010-06-10 49 views
4

有沒有使用sql 2008 Management Studio查看命中服務器的查詢的方法?我正在嘗試調試一個程序,並收到諸如「關鍵字附近的語法錯誤」和「'等消息。由於查詢是動態生成的,因此找出服務器將要執行的操作很麻煩。查看命中SQL的查詢

任何幫助表示讚賞!

回答

2

我不知道任何使用SQL Server Management Studio執行此操作的方法,但是如果您安裝了SSMS,那麼您可能還安裝了SQL Profiler。如果您啓動並運行TSQL_SPs概要分析器模板,則可以看到每個發出數據庫的語句。

1

轉到管理...活動監視器在對象瀏覽器中。

雖然沒有生效,但您必須手動刷新它。

+0

這給我最近昂貴的查詢,但沒有沒有運行完成的查詢。 雖然謝謝! – Shaded 2010-06-10 20:10:19

2

由於查詢是動態生成的,因此找出服務器將要執行的操作很麻煩。

爲什麼不把生成的查詢放到消息框中,或者打印到控制檯或網頁等?

試圖在DB服務器上捕獲它似乎是調試一些簡單的即席查詢的漫長過程。

+0

它實際上是從Jasper報告發送查詢,我可以打印出生成的部分查詢,但無法打印出正在發送的實際查詢。 – Shaded 2010-06-10 20:07:31

+0

我明白了,那麼我猜活動監視器會派上用場。 – 2010-06-10 20:11:49

0

啓動從SSMS(工具 - > SQL Server事件探查)探查器,運行跟蹤,並選擇T-SQL事件

0

一種選擇是使用SQL Server Profiler運行跟蹤。但是,在某些商店中,SQL Server權限已設置,因此只有DBA才能運行跟蹤。

如果您沒有足夠的權限運行跟蹤,則另一個選項是查看生成SQL和運行SQL Server的應用程序之間的網絡通信。 WireShark適用於此。