Définir PDO::ATTR_EMULATE_PREPARES
à false, si vous en avez vraiment besoin avec PHP faiblement typé
Si mysql_fetch_row
vous renvoie int pour SUM non plus (je n'ai jamais voulu vérifier) - alors il fait de la magie comme if (ctype_digit($val)) $row[$key] = (int)$val;
- pour que vous puissiez le faire dans votre DBAL
Pour autant que je sache comment fonctionnent les instructions préparées, elles utilisent la même structure de paquets pour envoyer et récupérer des données, et ce paquet contient le type de données.
Il semble que ce serveur puisse renvoyer des données dans 2 formats - natif et mysqlnd, selon le type de requête. Une dernière peut être interprétée par la bibliothèque cliente pour convertir la valeur résultante.