首页 > 解决方案 > 为什么我的查询无法使用 ActiveRecord?

问题描述

我尝试Article使用以下代码获取模型:

$criteria = new CDbCriteria();
$criteria->addCondition("type = :type and name ILIKE :name";
$criteria->params = [
    ":type" => 1,
    ":name" => "art"
];
$articles = Articles::model()->findAll($criteria);

但它不起作用我得到:

ILIKE 附近的数据库错误。

标签: phpactiverecordyiiyii1.x

解决方案


我认为您在查询中使用了错误的CDbCriteria方法。尝试对 ILIKE 使用 addSearchCondition

$criteria->addSearchCondition("name", "art", true, "AND", "ILIKE");

推荐阅读