首页 > 后端开发 > php教程 > 单个 MySQL 预准备语句可以执行多个查询吗?

单个 MySQL 预准备语句可以执行多个查询吗?

Mary-Kate Olsen
发布: 2024-11-25 18:24:10
原创
950 人浏览过

Can a Single MySQL Prepared Statement Execute Multiple Queries?

是否可以在一条语句中准备多个 MySQL 查询?

查询:

在 MySQL 中,可以准备好的语句同时执行多个查询?例如:

mysqli->prepare(query1 ...1,2,3 param...; query2...4,5 param...);
登录后复制

或者:

mysqli->prepare(insert into ...1,2,3 param...; insert into...4,5 param...);
登录后复制

后跟:

mysqli->bind_param("sssss", 1, 2, 3, 4, 5);
登录后复制

答案:

不可以,MySQL 中的预准备语句只能执行单个查询。可以在单独的变量中创建多个准备好的语句:

$stmtUser = $sql->prepare("INSERT INTO user (id_user, username, pw, email) VALUES (?,?,?,?)");
$stmtProc = $sql->prepare("INSERT INTO process (id_user, idp) VALUES (?,?);");
登录后复制

这些语句可以稍后执行。

要确保两个查询都成功执行,请考虑使用数据库事务,如建议的那样Thomas。

提示:

如果遇到错误“call to member function on尝试绑定参数时的“非对象”,它可能表示在prepare()语句本身中存在错误。

以上是单个 MySQL 预准备语句可以执行多个查询吗?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板