Sie werden das als eine separate Abfrage zu tun haben, zum Beispiel:
SELECT COUNT(1) FROM table_name
Einige Treiber JDBC könnte Ihnen sagen, aber das ist nicht das Verhalten und mehr auf den Punkt, der Fahrer kann nicht weiß es noch. Dies kann daran liegen, wie die Abfrage optimiert wird, z. B. zwei beispielhafte Ausführungsstrategien in Oracle, um alle Zeilen so schnell wie möglich zu bekommen oder um die erste Zeile so schnell wie möglich zu bekommen.
Wenn Sie das tun zwei separate Abfragen (eine eine Zählung und die andere die Abfrage) dann müssen Sie sie innerhalb derselben Transaktion zu tun. Dies funktioniert bei Oracle gut, kann aber bei anderen Datenbanken problematisch sein (z. B. zeigt SQL Server entweder nicht festgeschriebene Daten oder blockiert bei einem externen nicht festgeschriebenen Update abhängig von Ihrer Isolationsstufe, während Oracle eine Isolationsstufe unterstützt, die Ihnen eine konsistent konsistente Sicht auf die Daten ohne Blockierung externer Updates).
Normalerweise obwohl es nicht Minster, wie viele Zeilen gibt. In der Regel wird diese Art von Abfrage entweder stapelweise oder seitenweise verarbeitet, und auf beide Arten haben Sie Fortschrittsinformationen in Form von Zeilen, die geladen/verarbeitet werden, und Sie können (natürlich) das Ende der Ergebnismenge erkennen.
Gute Antwort, obwohl ich darüber, dass Fortschritte Informationen, um die letzte Bemerkung nicht verstehen. Woher kommt das? – Aktau
Dies erfordert eine andere Abfrage. Wenn Sie eine scrollbare Ergebnismenge haben, gibt es bessere Möglichkeiten in anderen Antworten. – JDuarteDJ