共用方式為


如何:記錄長時間執行的查詢 (ODBC)

完整的範例可用於示範如何建立長時間執行的查詢記錄檔。完整的範例程式碼位於 LogLongRunningQuery.cpp 檔案中,而且您可以從 MSDN 的<SQL Server 下載>(英文) 頁面下載此檔案。這個範例是使用 Microsoft Visual C++ 2005 所開發的,而且是針對 ODBC 3.0 版或更新版本所開發的。

安全性注意事項安全性注意事項

儘可能使用 Windows 驗證。如果無法使用 Windows 驗證,請提示使用者在執行階段輸入認證。請避免將認證儲存在檔案中。如果您必須保存認證,則應該用 Win32 crypto API 加密這些認證。

使用 ODBC 管理員記錄長時間執行的查詢

  1. [控制台] 中按兩下 [系統管理工具],然後按兩下 [資料來源 (ODBC)] (或者,您也可以從命令提示字元執行 odbcad32.exe)。

  2. 按一下 [使用者 DSN][系統 DSN][檔案 DSN] 索引標籤。

  3. 按一下記錄長時間執行之查詢的資料來源。

  4. 按一下 [設定]

  5. 在 [Microsoft SQL Server 設定 DSN 精靈] 中,導覽至 [將長時間執行的查詢儲存到記錄檔] 的頁面。

  6. 選取 [將長時間執行的查詢儲存到記錄檔]。在方塊中,放置應該記錄其長時間執行查詢之檔案的名稱。或者,按一下 [瀏覽] 來瀏覽檔案系統中的查詢記錄。

  7. [長時間查詢的時間 (毫秒)] 方塊中,設定查詢逾時間隔 (以毫秒為單位)。

以程式設計方式記錄長時間執行的查詢資料

  1. 利用 SQL_COPT_SS_PERF_QUERY_LOG 以及長時間執行之查詢記錄檔的完整路徑和檔案名稱呼叫 SQLSetConnectAttr。例如:

    C:\\Odbcqry.log
    
  2. 以 SQL_COPT_SS_PERF_QUERY_INTERVAL 呼叫 SQLSetConnectAttr,並設定為逾時間隔 (以毫秒為單位)。

  3. 利用 SQL_COPT_SS_PERF_QUERY 和 SQL_PERF_START 呼叫 SQLSetConnectAttr 開始記錄長時間執行的查詢。

  4. 利用 SQL_COPT_SS_PERF_QUERY 和 SQL_PERF_STOP 呼叫 SQLSetConnectAttr 停止記錄長時間執行的查詢。