我正在尝试运行此查询,但是,我不断收到错误“致命错误:未捕获的异常 'PDOException' 并带有消息'SQLSTATE [42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误;请查看手册对应于您的 MySQL 服务器版本,以便在 /home/a7668955/public_html/uploadproc1.php:106 中的第 1 行的 ')' 附近使用正确的语法堆栈跟踪:#0 /home/a7668955/public_html/uploadproc1.php( 106): PDOStatement->execute() #1 {main} 在 /home/a7668955/public_html/uploadproc1.php 第 106 行抛出
我确定这与我编写 SQL 语句的方式有关,我不确定当 user_id 使用两次时如何绑定值?
$sql1 = "UPDATE people SET firstname = (SELECT firstname FROM user WHERE username=:user_id) WHERE username=:user_id)";
$q = $conn->prepare($sql1) or die("failed!");
$q->bindParam(':user_id', $user_id, PDO::PARAM_STR);
$q->execute();
谢谢你的帮助!(此查询使用旧的 mysql_* 成功运行)