Bug #81310 [Nab]: Clarify UPGRADING entry (bug?)

From: Date: Thu, 29 Jul 2021 21:06:51 +0000
Subject: Bug #81310 [Nab]: Clarify UPGRADING entry (bug?)
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-235466@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=81310&edit=1 ID: 81310 Updated by: cmb@php.net Reported by: alec@php.net Summary: Clarify UPGRADING entry (bug?) Status: Not a bug Type: Bug Package: PDO MySQL PHP Version: 8.1.0beta1 Block user comment: N Private report: N New Comment: > Maybe query() uses prepared queries internally. Right. That has recently been clarified in the documentation[1]: | PDO::query() prepares and executes an SQL statement in a single | function call, […] [1] <https://www.php.net/manual/en/pdo.query.php> Previous Comments: ------------------------------------------------------------------------ [2021-07-29 19:01:05] requinix@php.net pdo_mysql enables emulated prepares by default. ------------------------------------------------------------------------ [2021-07-29 17:37:33] alec@php.net Description: ------------ In UPGRADING there's this: " - PDO MySQL: . Integers and floats in result sets will now be returned using native PHP types instead of strings when using emulated prepared statements. This matches the behavior of native prepared statements. You can restore the previous behavior by enabling the PDO::ATTR_STRINGIFY_FETCHES option. " In my code I don't use prepare()/execute(), nor PDO::ATTR_EMULATE_PREPARES. All I use is query()/fetch(). However, I noticed that I started getting integers instead of strings now. So, is that a bug? Maybe query() uses prepared queries internally. But then maybe it should be clarified, that it has really nothing to do with prepared statements mode. ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=81310&edit=1

« previous php.bugs (#235466) next »