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

PDO rowCount() fonctionne sur MySQL mais pas dans SQL Server 2008 R2

Je sais que c'est un peu un vieux fil, mais j'ai eu la même question ce matin et il y a en fait un moyen pour le rowcount() fonction pour travailler avec le serveur SQL.

J'utilise une chaîne de connexion comme celle-ci (pour me connecter à une base de données SQL Server) :

$connection = new PDO("sqlsrv:Server=" . $this->sourceServer . ";Database=" . $this->sourceDB, $this->sourceUser, $this->sourcePW);
$connection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

Et quand je veux utiliser une requête pour laquelle j'ai besoin de connaître le nombre de ligne à retourner (avec SQL server), j'utilise PDO::ATTR_CURSOR => PDO::CURSOR_SCROLL comme deuxième paramètre de la fonction de préparation de PDO comme ceci :

$rs = $connection->prepare($query, array(PDO::ATTR_CURSOR => PDO::CURSOR_SCROLL));

Voici l'exemple du site Web de Microsoft :https:/ /msdn.microsoft.com/en-us/library/ff628154(v=sql.105).aspx

Eh bien, il n'est jamais trop tard pour partager une bonne solution,

Jonathan Parent-Lévesque de Montréal