24.12.2020, 09:04 | #1 |
Участник
|
AX2009 и FETCH API_CURSOR
Друзья, у меня появились вопросы по FETCH API_CURSOR.
Есть некий запрос, допустим: X++: while select ledgerTrans index hint ACDate where ledgerTrans.AccountNum == "AccountNum" && ledgerTrans.TransDate <= 29\02\2020 && ledgerTrans.Posting == LedgerPostingType::LedgerJournal { /*что-то там написано*/ } Запрос в SQL выполняется быстро, первую десятку прогонов в цикле тоже быстро, НО потом на каком-то курсоре может зависнуть на десятки минут. При этом местный ДБА говорит, что за FETCH API_CURSOR* скрывается некий запрос который SQL пытается выполнить. Это так? Я всегда думал, что логично сначала выкачать данные, а потом просто по ним пробежаться. Зачем тогда выполнять мелкие под запросы в БД, какой в этом смысле? Может уже ДБА несет ересь? Кто-то сталкивался с таким поведением FETCH API_CURSOR? Как-то это лечится?
__________________
Любую техническую проблему можно решить, если есть достаточно времени и денег. |
|
Теги |
ax2009, fetch api_cursor, sql server |
|
|