我想找到想要緩存它的登錄用戶&的總得分。 我的代碼是:查詢緩存yii框架
$dependency = new CDbCacheDependency('SELECT MAX(id) FROM tbl_points_log where user_id='.Yii::app()->user->id);
$sql='SELECT SUM(point) as user_point FROM tbl_points_log left join tbl_action on tbl_action.id = tbl_points_log.action_type_id where user_id='.Yii::app()->user->id;
$user_point = Yii::app()->db->cache(1000, $dependency)->createCommand($sql)->queryAll();
上述代碼是否正確? 我必須在配置文件中進行一些更改才能使查詢緩存正常工作嗎?我只是說
'cache' => array(
'class' => 'CDbCache'
),
下部件
var_dump($dependency->getHasChanged());
結果始終爲true,即使我做任何更改到數據庫中,所以這是爲什麼?
P.S不打擾SQL語句。它的工作!
這沒關係。它應該工作沒有問題:) – sucotronic
我怎樣才能確定緩存是否工作? – iThink
打開調試並查看是否調用查詢。如果它被緩存,它們將不會被調用。 – Sarke