使用PHP PDO准备语句进行更新操作
P粉668019339
2023-08-24 19:21:05
<p>我正在尝试使用以下查询更新我的数据库:</p>
<pre class="brush:php;toolbar:false;">$sth = "UPDATE rpacks SET rpacks_location VALUES (:location) WHERE rpacks_id = (:id)";
$q = $conn->prepare($sth);
$q->execute(array(':location'=>$location, ':id'=>$id));</pre>
<p><b>但我收到此错误</b></p>
<p><code>致命错误:未捕获异常“PDOException”,消息为“SQLSTATE[42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在 </code> 第 1 行的 'VALUES ('test') WHERE rpacks_id = ('2')' 附近使用的正确语法</p>
更改为:
$sth = "更新 rpacks SET rpacks_location = :location WHERE rpacks_id = :id";
您的
update
查询中存在错误,因为您使用了insert
查询语法。以下是正确的查询:
参考: http://dev.mysql.com/doc/refman/5.0/ en/update.html