Ställ in PDO::ATTR_EMULATE_PREPARES
till false, om du verkligen behöver det med löst skrivet PHP
Om mysql_fetch_row
returnerar du int för SUM heller (jag brydde mig aldrig om att kontrollera) - då gör det lite magi som if (ctype_digit($val)) $row[$key] = (int)$val;
- så du kan göra i din DBAL
Så vitt jag förstår hur förberedda uttalanden fungerar, använder den samma paketstruktur för att antingen skicka och hämta data, och detta paket innehåller datatyp.
Det ser ut som att den servern kan returnera data i 2 format - native och mysqlnd, beror på typen av begäran. En senare kan tolkas av klientbiblioteket för att skapa resulterande värde.