PHP中的MySQLi查询工作不正常,有没有办法获得确切的查询?

问题描述 投票:1回答:2

MySQLi准备之后有没有办法获得查询?我的疑问搞得一团糟:

$query = "UPDATE event SET group=?, boxed=?, name=?, location=?, time=?, day=?, type=? WHERE id=? LIMIT 1";
if($stmt = $db -> prepare($query))
{
    $stmt -> bind_param("iisssssi", $group, $boxed, $name, $location, $time, $day, $etype, $id);
    $stmt -> execute();
    $stmt -> close();
}
else

错误信息:

您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以便在'group = ?, boxed = ?, name = ?, location = ?, time =?,day = ?, type =?附近使用正确的语法。 WHERE id =?在第1行限制1'

变量group是一个int,boxed是一个int,其余是字符串,id是一个int。

php mysqli
2个回答
6
投票

您正在使用SQL保留字“group”作为列名之一。


1
投票

不,MySQLi准备之后无法获得查询,因为通常意义上没有查询。字符串在您编写时会转到服务器 - 带有问号。这是准备好的陈述的一个恼人的缺点。

© www.soinside.com 2019 - 2024. All rights reserved.