在使用 Yii 框架開發應用時,調試資料庫查詢是優化效能、排查錯誤的關鍵步驟。本文將詳細介紹如何透過啟用除錯模式與配置日誌路由,在頁面上直接顯示執行的 SQL 語句,助你快速定位問題。
請開啟 protected/config/main.php,找到 log 元件配置區塊,並依照下列範例進行調整:
'log' => array(
'class' => 'CLogRouter',
'routes' => array(
array(
'class' => 'CFileLogRoute',
'levels' => 'trace, info, error, warning',
),
// 關鍵:啟用 Web 頁面日誌顯示
array(
'class' => 'CWebLogRoute',
'levels' => 'trace', // 只捕獲 trace 層級
'categories' => 'system.db.*' // 只記錄資料庫相關訊息(連線、查詢等)
),
),
),
system.db.CDbConnection、system.db.CDbCommand 等資料庫核心類別的日誌。若專案已引入 Yii Debug Toolbar 或 Yii2 Debug Module,建議優先使用擴充套件,它們提供更豐富的 SQL 分析介面(如查詢耗時、參數綁定、EXPLAIN 計畫等),且不污染頁面佈局。
掌握此技巧,能讓你在開發階段即時掌握資料庫互動細節,大幅提升除錯效率。希望本文對你的 Yii 專案開發有所幫助!