同时进行两个 mysqli 查询?
尝试执行多个 MySQL 查询时,为什么第二个查询会失败?
mysqli_multi_query()解决方案
要解决此问题,请考虑使用 mysqli_multi_query() 函数。此函数允许您在单个 mysqli 调用中执行多个查询。
示例实现
首先制定包含查询的字符串,用分号 (; 分隔每个查询)。 ).
$query = "INSERT INTO images (project_id, user_id, image_name, date_created, link_to_file, link_to_thumbnail, given_name) VALUES ('$project_id', '$user_id', '$image_name', '$date_created', '$link_to_file', '$thumbnail', '$ImageName');"; $query .= "INSERT INTO images_history (project_id, user_id, image_name, date_created, link_to_file, link_to_thumbnail, given_name, day, month, year) VALUES ('$project_id', '$user_id', '$image_name', '$date_created', '$link_to_file', '$thumbnail', '$ImageName', '$day', '$month', '$year');";
随后,使用以下命令执行多查询mysqli_multi_query():
$result = mysqli_multi_query($mysqli, $query);
处理执行结果
执行结果捕获在 $result 变量中。如果第一个查询失败,$result 将为 false。
后续步骤和注意事项
此外,请注意,对于没有结果集的查询,mysqli_store_result() 将返回 false (例如 INSERT 查询)。因此,请确保使用 mysqli_error() 通过检查空结果来验证 INSERT 是否成功。
请参阅提供的文档以获取有关 mysqli_multi_query()、mysqli_more_results()、mysqli_next_result() 和 mysqli_store_result() 的更多信息。功能。
以上是为什么我的第二个 MySQL 查询失败,'mysqli_multi_query()”如何提供帮助?的详细内容。更多信息请关注PHP中文网其他相关文章!