Um auch bei Datenbanken wie ``Interbase'' überhaupt auf die Anzahl der Zeilen eines SQl-Anfrage-Ergebnisses zuzugreifen wurde 'db_numrows_withseektoend' eingeführt. Wenn möglich sollte nur diese Funktion und nicht 'db_numrows' verwendet werden. Sie hat wie 'db_numrows' den Result-Handler der Anfrage als Parameter und gibt die Anzahl der Zeilen zurück.
Allerdings ist i.a. das gesamte Anfrage-Ergebnis nach Aufruf dieser Funktion nicht mehr abrufbar. Bei ``Interbase'' wird sie nämlich durch Durchlauf durch das gesamte Ergebnis realisiert und ``Interbase'' kann nur einmal auf eine Ergebniszeile zugreifen. Die anderen Datenbanken simulieren dies durch Setzen des Result-Handlers auf das Ende des Ergebnisses.
Diese Funktion sollte also erst verwendet werden , wenn alle benötigten Anfrage-Zeilen ausgelesen wurden, z.B. wenn man nur einen Ausschnitt einer SQL-Anfrage auf der aktuellen Seite darstellt und aber zusätzlich die Gesamt-Zeilenzahl anzeigen möchte.
Bisher wird immer 'db_union_numrows_withseektoend' aufgerufen, um mit ``UNION'' zusammengesetzte Anfragen zu behandeln. Der Name hiervon aufgerufenen, tatsächlich Datenbank-abhängigen Funktion ist derzeit immer 'my_<dbtype>_numrows_withseektoend'.