mirror of
https://github.com/php/php-src.git
synced 2025-08-16 05:58:45 +02:00
![]() MySQL always returns a trailing empty result set for stored procedure calls, which is used to convey status information. The PDO MySQL implementation is presently confused about what to do with it: If mysqlnd is used and native prepared statements are used, this result set is skipped. In all other cases it is not skipped. We also have quite a few XFAILed tests relating to this. This patch normalizes (for PHP-8.0 only) the behavior towards always retaining the empty result set. This is simply how MySQL stored procedures work (some expletives omitted here) and we can't distinguish this "useless" result set from an empty result of a multi query. Multi queries are not a concern for native prepared statements, as PDO does not allow them in that case, but they are a concern for emulated prepared statements. Closes GH-6497. |
||
---|---|---|
.. | ||
tests | ||
config.m4 | ||
config.w32 | ||
CREDITS | ||
get_error_codes.php | ||
mysql_driver.c | ||
mysql_statement.c | ||
pdo_mysql.c | ||
php_pdo_mysql.h | ||
php_pdo_mysql_int.h | ||
php_pdo_mysql_sqlstate.h |