1
如何获取mysqli_stmt对象的预处理语句?MYSQL错误准备好声明
如果执行mysql语句时出错,我想返回语句。
$id = "89c483c8";
$query = "SELECT * FROM database WHERE id = ?";
if (!($stmt = $database->prepare($query) { ... }
else {
$stmt->bind_param("s", $id);
if (!$stmt->execute())
return $stmt->get_statement; //doesn't exist
}
“$ stmt-> get_statement”当然不起作用。那么如何获得完整的查询?在这个例子中:
"SELECT * FROM database WHERE id = 89c483c8"
你应该引用的十六进制值。 – EvgenyKolyakov
没有这样的机会。只需使用'error'属性即可。类似:https://stackoverflow.com/questions/2691707/is-there-any-way-to-print-the-actual-query-that-mysqli-execute-makes –