Yii CDbCommand方法不适用

时间:2014-05-28 23:34:52

标签: php sql yii

我有以下代码在Yii中创建CDbCommand:

$cmd = Yii::app()->db->createCommand(array(
    'select'=>'CMUM, CPRO, CUN, DMUN50',
    'from'=>'PROVINCIAS',
    'where'=>'CPRO = :CPRO'
));
$cmd->bindParam(":CPRO", $CPRO, PDO::PARAM_STR);

$cmd->setLimit(2);

这应该将查询结果限制为2行,但我得到所有可用的行。为什么呢?

此致

1 个答案:

答案 0 :(得分:2)

您应该在绑定参数之前设置限制。因为绑定params时它会在内部准备PDO语句。所以你不能在那之后设置限制。

$cmd = Yii::app()->db->createCommand(array(
    'select'=>'CMUM, CPRO, CUN, DMUN50',
    'from'=>'PROVINCIAS',
    'where'=>'CPRO = :CPRO'
));
$cmd->setLimit(2);
$cmd->bindParam(":CPRO", $CPRO, PDO::PARAM_STR);