SQLSTATE[HY000]:执行查询后出现一般错误

SQLSTATE[HY000]: General error after execute query

我的 update 查询设置了正确的值,但 returns Yii2 中出现以下错误:

错误: SQLSTATE[HY000]: General error

更新查询:

$query =Yii::$app->db
        ->createCommand('
    UPDATE fc_dore_reg 
    INNER JOIN fc_dore ON fc_dore.id = fc_dore_reg.dore_id SET fc_dore_reg.pay_all = 1 
    WHERE fc_dore_reg.user_id = "'.$user_id.'"
')->queryAll();

为什么 fc_dore_reg.pay_all = 1 设置正确会出现这个错误?

你应该使用 execute()

Yii::$app->db
        ->createCommand('
            UPDATE fc_dore_reg 
            INNER JOIN fc_dore ON fc_dore.id = fc_dore_reg.dore_id 
            SET fc_dore_reg.pay_all = 1 
            WHERE fc_dore_reg.user_id = "'.$user_id.'"')
        ->execute();

请记住 queryAll() 一次执行 SQL 语句和 returns 所有行,但在更新中没有要 return 的行..