尝试减少我网站上的查询数量...为什么单个查询会作为多个查询运行?有办法解决这个问题吗?
例如,从以下代码行(第43行)......
$model = Menu::model()->findAll();
我们可以在查询日志中看到4个单独的查询被触发......
或者我只是读错了?
答案 0 :(得分:3)
第1,2和第1行上面的截图中的4个正在进行数据库查询。
Yii中的ActiveRecord在查询之前执行SHOW COLUMNS FROM <table>
和SHOW CREATE TABLE <table>
,因此它知道该表具有哪些列/列类型。在生产模式中,您可以打开架构缓存以减少这些查询:
http://www.yiiframework.com/doc/blog/1.1/en/final.deployment#enabling-schema-caching