mysqli 可以在一条语句中准备多个查询吗?
在 mysqli 中,准备好的语句旨在执行单个 MySQL 查询。虽然不可能在单个语句中准备多个查询,但您可以在不同的变量中创建多个准备好的语句。
为此,请使用以下方法:
$stmtUser = $sql->prepare("INSERT INTO user (id_user, username, pw, email) VALUES (?,?,?,?)"); $stmtProc = $sql->prepare("INSERT INTO process (id_user, idp) VALUES (?,?);");
您可以然后独立执行这些语句。例如:
$stmtUser->bind_param("ssss", $id, $username, $pw, $email); $stmtUser->execute(); $stmtProc->bind_param("ss", $id, $idp); $stmtProc->execute();
如果您需要同时严格执行两个查询,则应考虑使用事务。事务确保两个查询要么成功,要么都失败。
最后,请记住,“调用非对象上的成员函数”错误通常表示在prepare()语句中失败,需要您检查它错误。
以上是MySQLi 准备好的语句可以同时处理多个查询吗?的详细内容。更多信息请关注PHP中文网其他相关文章!