Я пытаюсь подключиться с сервера Microsoft SQL к AS / 400, чтобы я мог извлечь данные из AS / 400, а затем пометить данные как извлекаемые.
Я успешно создал и OLE DBСоединение "IBMDASQL", и я могу получить данные некоторые данные, но у меня возникает проблема, когда я пытаюсь получить данные из очень большой таблицы
Это работает нормально и возвращает счет 170 миллионов:
select count(*)
from transactions
Этот запрос выполнялся за 15 часов до того, как я отказался от него.(Он должен возвращать ноль, поскольку я еще ничего не помечал как «в процессе»)
select count(*)
from transactions
where processed = 'In process'
Я парень из Microsoft, но мой парень из AS / 400 говорит, что на 'есть индекс'обработано "и что локально, этот запрос выполняется мгновенно.
Есть мысли о том, что я могу делать неправильно?Я нашел таблицу с 68 записями и смог выполнить этот запрос примерно за секунду:
select count(*)
from smallTable
where RandomColumn = 'randomValue'
Так что я знаю, что AS / 400, по крайней мере, способен понять запрос такого типа.