MySQLi 可以在一条语句中准备多个查询吗?
在 MySQLi 中,在一条语句中准备多个查询存在限制。一条准备好的语句只能执行一个 MySQL 查询。但是,您可以根据需要准备任意数量的语句,并将它们存储在不同的变量中。下面是一个示例:
<code class="php">$stmtUser = $sql->prepare("INSERT INTO user (id_user, username, pw, email) VALUES (?,?,?,?)"); $stmtProc = $sql->prepare("INSERT INTO process (id_user, idp) VALUES (?,?);");</code>
稍后,您可以独立执行这些语句:
<code class="php">$stmtUser->execute(); $stmtProc->execute();</code>
如果您需要这两条语句都成功执行或根本不执行,请考虑使用事务。
错误处理:
如果遇到错误“Call to a member function bind_param() on a non-object”,则表明prepare()调用失败,导致无效的准备好的语句对象。在这种情况下,有必要检查prepare()语句是否存在潜在错误。
以上是MySQLi 可以在一条语句中准备多个查询吗?的详细内容。更多信息请关注PHP中文网其他相关文章!