Mysql
 sql >> Datenbank >  >> RDS >> Mysql

PDO rowCount() funktioniert auf MySQL, aber nicht in SQL Server 2008 R2

Ich weiß, es ist ein etwas alter Thread, aber ich hatte heute Morgen eine ähnliche Frage und es gibt tatsächlich einen Weg für rowcount() Funktion, um mit SQL Server zu arbeiten.

Ich verwende eine Verbindungszeichenfolge wie diese (um eine Verbindung zu einer SQL-Server-Datenbank herzustellen):

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

Und wenn ich eine Abfrage verwenden möchte, für die ich die Anzahl der zurückzugebenden Zeilen kennen muss (mit SQL Server), verwende ich PDO::ATTR_CURSOR => PDO::CURSOR_SCROLL als zweiter Parameter der PDO-Prepare-Funktion einfach so:

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

Hier ist das Beispiel von der Microsoft-Website:https:/ /msdn.microsoft.com/en-us/library/ff628154(v=sql.105).aspx

Nun, es ist nie zu spät, eine gute Lösung zu teilen,

Jonathan Parent-Lévesque aus Montreal