我有一个表名板,我正在尝试使用当前代码插入数据
function createBoard( $name, $desc ) {
try {
$sth = $this->getLink()->prepare( "INSERT INTO boards(id,memberid,name,desc,datecreated,isactive)
VALUES(?,?,?,?,?,?)" );
$uuid = $this->uuid();
$memberid = 1;
$date = Utils::getDate();
$isactive = 1;
$sth->bindParam( 1, $uuid );
$sth->bindParam( 2, $memberid );
$sth->bindParam( 3, $name );
$sth->bindParam( 4, $desc );
$sth->bindParam( 5, $date );
$sth->bindParam( 6, $isactive );
return $sth->execute();
} catch( PDOException $e ) {
/*
* save the error to the error log defined as @ERROR_LOG
*/
file_put_contents( ERROR_LOG, ( "\n" . Utils::getDate() . " : " . $e->getMessage() ), FILE_APPEND);
die( "FATAL ERROR...Please check the error log." );
}
}
Run Code Online (Sandbox Code Playgroud)
但是,每次出现此错误" 2012-05-11 14:40:50:SQLSTATE [42000]:语法错误或访问冲突:1064您的SQL语法有错误;请查看与您的MySQL服务器对应的手册版本使用近'递减,dateCreated会,isactive)VALUES(' d5989c7e-9b98-11e1-88cd-0026b936528c", '1'第1行正确的语法 "
我尝试使用相同的函数bindValue(),只是将带有直接值的数组放入$sth->execute()函数中,但我总是收到相同的错误.也许外面的眼睛可以发现我遗失或做错的事情?
ccK*_*Kep 30
在backticks(`)中封装你的字段名称,desc是一个保留字.
$sth = $this->getLink()->prepare( "INSERT INTO `boards` (`id`,`memberid`,`name`,`desc`,`datecreated`,`isactive`)
VALUES(?,?,?,?,?,?)" );
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
30610 次 |
| 最近记录: |