bigpoint Geschrieben 13. Juli 2006 Teilen Geschrieben 13. Juli 2006 Wie kann ich von SqlDataReader anzahl von Datensätzen auslesen bzw. zurück bekommen? Gibt es da eine Methode oder muss ich den DataReader selber durchlaufen? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Amstelchen Geschrieben 13. Juli 2006 Teilen Geschrieben 13. Juli 2006 du hast AFAIR zwei möglichkeiten: a) SqlDataReader durchloopen und selbst zählen: SqlDataReader meinReader; meinReader = myCommand.ExecuteReader(); int cntAnzahlDS = 0; while (meinReader.Read()) { cntAnzahlDS++; } SqlDataReader in ein DataSet umwandeln und dann die DS zählen. s'Amstel Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Trux Geschrieben 13. Juli 2006 Teilen Geschrieben 13. Juli 2006 als dritte methode, welche ich empfehlen würde, kann man auch den sql-server die "arbeit" erledigen lassen. Also "SELECT COUNT(*) FROM TABLE" Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Honkytonk Geschrieben 14. Juli 2006 Teilen Geschrieben 14. Juli 2006 Öhm, der letzte Vorschlag ist nicht ganz dein Ernst, oder? Ich glaube bigpoint möchte nicht die Anzahl der Datensätze in der Tabelle sondern die Anzahl der Datensätze, die von seiner Abfrage betroffen sind. Der SqlDataReader hat im übrigen eine Property namens RecordsAffected, die den gewünschten Wert enthält. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Klotzkopp Geschrieben 14. Juli 2006 Teilen Geschrieben 14. Juli 2006 Öhm, der letzte Vorschlag ist nicht ganz dein Ernst, oder? Ich glaube bigpoint möchte nicht die Anzahl der Datensätze in der Tabelle sondern die Anzahl der Datensätze, die von seiner Abfrage betroffen sind.Es sollte offensichtlich sein, dass das Statement gegebenfalls an die verwendete Abfrage angepasst werden muss. Je nach Statement und Anzahl der Datensätze kann dieser Ansatz viel schneller sein, als mitzählenderweise durch das Ergebnis zu laufen. Der SqlDataReader hat im übrigen eine Property namens RecordsAffected, die den gewünschten Wert enthält.Nein. 0 if no rows were affected or the statement failed; and -1 for SELECT statements. Und selbst wenn es für Abfragen funktionieren würde: The RecordsAffected property is not set until all rows are read and you close the SqlDataReader. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
bigpoint Geschrieben 14. Juli 2006 Autor Teilen Geschrieben 14. Juli 2006 als dritte methode, welche ich empfehlen würde, kann man auch den sql-server die "arbeit" erledigen lassen. Also "SELECT COUNT(*) FROM TABLE" Ja es stimmt, das wehre aber dann bedeutet dass ich noch einen SqlDataReader deklarieren muss und dass wollte ich einfach mir sparen Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.