在SQL Server中,可以使用以下方法查看執行過的語句:
使用SQL Server Management Studio (SSMS):打開SSMS,連接到目標數據庫服務器,選擇要查看的數據庫,然后選擇“工具”>“SQL Server Profiler”或者“工具”>“SQL Server跟蹤”來打開SQL Server Profiler或SQL Server跟蹤窗口。在這些工具中,您可以配置跟蹤會話,選擇要監視的事件,并啟動跟蹤。跟蹤會話將記錄執行過的語句以及其他相關信息。
使用SQL Server的系統視圖:在SQL Server的目標數據庫中,您可以查詢一些系統視圖來查看執行過的語句。例如,可以使用sys.dm_exec_query_stats視圖來查看執行的語句和其執行計劃的一些統計信息。可以使用sys.dm_exec_sql_text視圖來獲取執行過的SQL語句的文本。
下面是一個示例查詢,可以使用sys.dm_exec_query_stats視圖來查看在當前數據庫中執行過的語句和其執行計劃的一些統計信息:
SELECT
OBJECT_NAME(qt.objectid) AS 'ObjectName',
SUBSTRING(st.text, (qs.statement_start_offset/2) + 1,
((CASE qs.statement_end_offset
WHEN -1 THEN DATALENGTH(st.text)
ELSE qs.statement_end_offset
END - qs.statement_start_offset)/2) + 1) AS 'ExecutedQuery',
qs.execution_count AS 'ExecutionCount',
qs.total_logical_reads AS 'TotalLogicalReads',
qs.total_logical_writes AS 'TotalLogicalWrites',
qs.total_physical_reads AS 'TotalPhysicalReads',
qs.creation_time AS 'CreationTime'
FROM
sys.dm_exec_query_stats AS qs
CROSS APPLY
sys.dm_exec_sql_text(qs.sql_handle) AS st
LEFT JOIN
sys.dm_exec_query_stats AS qt ON qs.plan_handle = qt.plan_handle
ORDER BY
qs.creation_time DESC;
運行以上查詢將返回執行過的語句和相關的統計信息,按照創建時間倒序排序。
請注意,這些方法都需要適當的權限來查看執行過的語句。