Yii Framework / PDO获取错误CDbCommand无法执行SQL语句:SQLSTATE [42000]

时间:2010-02-23 08:15:41

标签: php pdo yii

我正在尝试使用Yii Framework和PDO对象将一些数据插入到表中并获得以下错误

我正在使用此代码构建查询

$connection = CActiveRecord::getDbConnection();

        $sql="INSERT INTO sms_logs (to, from, message,error_code,date_send) VALUES (:to,:from,:message,:error_code,:date_send)";
        $command=$connection->createCommand($sql);
        $command->bindParam(":to",$to,PDO::PARAM_STR);
        $command->bindParam(":from",$from,PDO::PARAM_STR);
        $command->bindParam(":message",$message,PDO::PARAM_STR);
        $command->bindParam(":error_code",$code,PDO::PARAM_STR);
        $command->bindParam(":date_send",date("Y-m-d H:i:s"),PDO::PARAM_STR);
        $command->execute();

然后,只要我运行代码,我就会

CDbCommand failed to execute the SQL statement: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'to, from, message,error_code,date_send) VALUES ('27724963345','27723663542','Hap' at line 1INSERT INTO sms_logs (to, from, message,error_code,date_send) VALUES (:to,:from,:message,:error_code,:date_send)

欢迎任何建议!使用mySql作为db

1 个答案:

答案 0 :(得分:2)

您需要在$ sql中转义单词from。这是reserved word