问题标签 [mysqli-multi-query]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1479 浏览

php - 带有准备好的语句的多查询

我正在尝试了解多查询如何在 mysqli 中工作。但我承认这并不容易理解。

基本上我如何在多查询中进行这些查询?该页面没有讨论多查询中的准备好的语句。

0 投票
2 回答
140 浏览

php - mysqli_multi_query 是否一次将整个 SQL 发送到数据库?

我严重怀疑 mysqli 的多查询是否真的是多查询,因为从 Web 服务器到数据库的总行程仅为 1。

如果我们调用 5 语句多查询,我们必须执行 multi_query() 一次和 next_result() 4 次。

那么,从 Web 服务器到数据库的次数还不是 5 次吗?

此外,mysqli_use_result()每次 mysqli_more_results()调用mysqli_store_result()都需要一次访问数据库?

0 投票
2 回答
3537 浏览

php - 使用 mysqli_multi_query 和 transactions 运行多个查询

我正在为用 PHP 编写的 Web 应用程序开发更新系统。在更新过程中,我可能需要执行一堆 MySQL 脚本。

运行脚本的基本过程是:

  1. 搜索 Mysql 脚本
  2. 开始交易
  3. 使用 mysqli_multi_query 执行每个脚本,因为一个脚本可以包含多个查询
  4. 如果一切顺利,则提交事务,否则回滚。

我的代码看起来像:

以下是脚本示例(用于演示目的):

在这种情况下,脚本 1.5.0.0 将在没有错误的情况下执行,而脚本 1.5.1.0 将生成错误(出于演示目的,假设该列key是唯一的,并且已经有一行key= 1)。

在这种情况下,我想回滚每个已执行的查询。但是发生的情况是 1.5.1.0 的第一个插入不在数据库中(正确),但来自 1.5.0.0 的更新已成功执行。

评论:

  1. 我的第一个选择是用“;”从每个脚本中拆分每个查询 并独立执行查询。这不是一个选项,因为我必须能够将 HTML 代码插入数据库(例如:如果我想插入类似“ ”的内容)
  2. 我已经搜索过 StackOverflow 和 google 并遇到了类似这样的解决方案,但我更喜欢使用 mysqli_multi_query 之类的解决方案,而不是使用函数来拆分每个查询。对于调试目的,它更容易理解和更容易
  3. 我还没有测试过,但我相信我可以合并所有脚本并只执行一个查询。但是,一次执行一个脚本会很有用,这样我就可以找出哪个脚本有错误。
  4. 表引擎是 InnoDB。

感谢您是否可以指出一些方法来完成这项工作。

0 投票
1 回答
214 浏览

mysql - mysql_connect() 确实连接到 MySQL

我的处境很糟糕。当我使用MySQLi连接代码时,我的 PHP 与 MySQL 数据库一起使用,但是当我尝试使用连接数据库时

我没有收到任何错误消息。相反,浏览器只是脱机或出现错误消息。两周来我一直试图弄清楚这一点。

在我的 PHP 中,MySQL 和 mysqli 行都没有注释。我正在使用 Windows 7 64 位。

0 投票
1 回答
138 浏览

php - php mysqli oo multi_query 在一个数组上

我有一个 $color_combo 值,它分解为给定项目的 $colors 数组(数组中的 3 个值)。$colors 值是 3 个字符的字符串代码,即 FGR,并且数据库中有一个查找表,将该代码与“森林绿色”颜色匹配……但是每个项目有 3 种颜色,我需要运行查询 3 次数组:

所以我正在尝试:

我无法找到关于这种情况的文档,它可能正在使用其他功能......:

我的核心问题是更多关于 mysqli 扩展的最佳实践以及如何对值数组运行查询

0 投票
2 回答
1972 浏览

php - mysqli_multi_query 未插入 mysql 数据库

我已经使用了教程、示例并查看了有关我的问题的许多其他问题,但我仍然无法让它工作,我对 PHP 比较陌生,对 PDO 没有任何了解。我已将我的代码更改为 mysqli 而不是 mysql,以摆脱我的大学给我的贬值代码,但在这种情况下它们的帮助不大。

如果有人能为我阐明这个问题,我将不胜感激。以下是我的代码示例:

数据既来自写入的表单(最后一个表单),也来自先前表单的会话。但是,我也收到此错误:警告:mysqli_multi_query() 期望参数 1 为 mysqli,Warning: mysqli_close() expects parameter 1 to be mysqli而过去几天我一直坚持这一点!先感谢您。

0 投票
1 回答
4092 浏览

php - 如何将简单的 MySQL 示例转换为 MySQLi 面向对象的风格?

如何将这个简单的 MySQL 示例转换为 MySQLi 面向对象的样式:

结果:

数据库结构SELECT * FROM fruits

0 投票
1 回答
519 浏览

php - mysqli multi_query 后跟查询

我目前正在执行以下操作:

有没有更快的方法来转储结果?

我不需要它们,只想运行下一个查询,但是出现错误:

命令不同步;你现在不能运行这个命令

问题是while ($mysqli->next_result()) {;}大约需要 2 秒,这对于我不想要的东西来说是一种浪费。

有没有更好的解决方案?

0 投票
1 回答
313 浏览

php - mysqli_ping 中断 mysqli_multi_query

我有一个很好的函数,叫做 lnk(),我已经使用了很长时间,它连接到 MySQL。最近我决定添加 mysqli_ping 调用来检查连接并在需要时重新连接,因为我遇到了一个守护进程(24/7 运行)的问题,它在长时间不活动后一直失去与 MySQL 的连接。

实施后,我开始遇到多查询问题。如果在 mysqli_multi_query 之后发送 ping,则在发送 ping 时会丢失与 MySQL 的连接,除非 mysqli_store_result 在 ping 之前。

任何想法为什么会发生这种情况?

请不要建议在库中添加变量以在这些情况下忽略连接检查。我已经想到了,这还不够好。我需要确切地知道为什么会发生这种情况以及在这种情况下 ping 对我的连接有什么作用。

0 投票
4 回答
4804 浏览

php - 如何使用 mysqli_multi_query 识别导致错误的查询?

使用 SO 上其他地方的示例来更好地捕捉“隐藏”错误。虽然下面的代码将捕获并返回错误,但是否可以改进它以报告发生错误的查询?

使用下面的代码,输出是:

正在测试的代码: