Mysql
 sql >> Base de données >  >> RDS >> Mysql

PDO::Query() renvoie faux

Utilisez errorinfo() de PDO fonction pour savoir pourquoi.

if( ! $sth = $db->query("SELECT * FROM titles ORDER BY RAND() LIMIT 1") ) {
  die(var_export($db->errorinfo(), TRUE));
}

Mise à jour tardive

Dans l'intérêt d'améliorer mes anciennes réponses, configurer PDO pour lever des exceptions en cas d'erreur est beaucoup plus gérable que de vérifier chaque retour de fonction.

$dbh = new PDO($connstr, $user, $pwd);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

Ou, plus concis :

$dbh = new PDO($connstr, $user, $pwd, [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION]);