Это выходит за рамки моей компетенции, но я думаю, что эквивалентная функциональность вне ADO будет заключаться в извлечении набора данных в массив, а затем в использовании стандартных методов навигации по массиву, а не функциональности, специфичной для API базы данных.
Если вы имеете дело с наборами данных, которые достаточно велики, и вы не хотите загружать все целиком за один раз, вы должны попытаться найти способ сузить набор результатов в запросе, прежде чем выначать навигацию по результатам.Например, если вы загружаете набор результатов, а затем просто переходите к последней строке, достаточно просто заставить запрос просто вернуть последнюю строку на первом месте.Если вы обнаружите, что извлекаете набор результатов, а затем просматриваете его (или фильтруете) для определенной строки (или набора строк), я думаю, вы обнаружите, что если Oracle сделает это для вас, вы увидите значительно более высокую производительность.
Причина, по которой вам нужно использовать массивы для навигации такого типа в Oracle, заключается в том, что курсоры Oracle всегда предназначены только для пересылки (тогда как в ADO у вас есть динамические, наборы ключей и статические курсоры).Если вам действительно нужно ориентироваться во всем большом наборе результатов, загрузка всего этого в массив - ваш единственный выбор.