Maison >base de données >tutoriel mysql >Pourquoi mes entiers MySQL sont-ils renvoyés sous forme de chaînes dans PDO et comment puis-je y remédier ?
PDO et MySQL : récupération de valeurs numériques
Lorsque vous travaillez avec PDO et MySQL, vous pouvez rencontrer des cas où les valeurs entières extraites de la base de données sont renvoyé sous forme de chaînes plutôt que de types numériques. Pour résoudre ce problème, il est crucial de désactiver l'émulation des instructions préparées PDO.
Pour ce faire :
$pdo = new PDO($dsn, $user, $password, [ PDO::ATTR_EMULATE_PREPARES => false, ]);
En désactivant l'émulation, PDO utilisera les types de données natifs pour les instructions préparées. Cela garantit que les valeurs entières sont renvoyées sous forme de types numériques.
Notez que l'attribut PDO::ATTR_STRINGIFY_FETCHES n'est pas pertinent pour MySQL.
Malgré cet inconvénient, l'utilisation d'instructions préparées est une pratique fortement recommandée, offrant une sécurité et des performances améliorées.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!