gpt4 book ai didi

php - 如何在 PHP 中同时执行多个 mysql 查询?

转载 作者:可可西里 更新时间:2023-11-01 07:57:03 24 4
gpt4 key购买 nike

我想要一个选择查询和一个插入查询,我想使用函数 (mysql_query) 将它们一起执行,但它不起作用。我想做这样的事情:

$sql="select * from texts; insert into date ('time') values ('2012');";
mysql_query($sql);

有什么办法吗?

最佳答案

mysql_query() 发送唯一查询(不支持多个查询)。这是默认行为。但是有一个旁路。

但是,如果您这样做,第一个查询的结果代码将单独作为 mysql_query() 的输出给出。

您只需将标志 65536 作为 mysql_connect 的第 5 个参数传递。该标志在 MySQL Client flags 中定义.

#define CLIENT_MULTI_STATEMENTS 65536 /* Enable/disable multi-stmt support */
#define CLIENT_MULTI_RESULTS 131072 /* Enable/disable multi-results */

所以编辑你的 mysql_connect() 代码来匹配这个:

mysql_connect($host, $username, $password, false, 65536);

警告:

  1. 对于给定的 $query 中的第一个查询,您将获得 mysql_query($query) 的结果。您可以尝试将 13107265536 连接起来以获得多个结果。
  2. 这不适用于 PHP < 4.3.0
  3. 如果在 php.ini 中将 sql.safe_mode 设置为 1,这将不起作用

另一种选择是使用 mysqli 而不是 mysql 库。它支持 $mysqli->multi_query() 并在数组中为每个查询提供输出。

关于php - 如何在 PHP 中同时执行多个 mysql 查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10663046/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com