Показать сообщение отдельно
Старый 10.03.2021, 21:37   #2  
DSPIC is offline
DSPIC
Боец
 
1,077 / 1234 (44) ++++++++
Регистрация: 11.04.2008
Я бы не стал такой способ применять. Ну во-первых где наши DeleteActions и где фильтрация по компаниям? Во вторых, код на голом SQL всегда сулит проблемы, если что-то сделать неаккуратно. Далее - где обработка эксепшенов и повторов, если что-то залочилось чем-то и нужно повторить? Если проблема блокировок есть, то уровень SQL может усугубить.
Что мешает сделать то же самое на X++? Если правильно приготовить код, то из AX он удаляется ничуть не хуже (отключить логи, отключить DeleteActions и обработать их отдельным шагом?). А ведь DeleteActions как раз таки одна из главных проблем при удалении parent tebles. А где выполняется логика из метода Delete()?

В общем случае задача быстрого удаления голым SQL не решается. Каждую удаляемую сущность нужно анализировать индивидуально, разбивать на последовательные логические шаги. В этом основная сложность и только такой подход применим.
В конечном итоге, если вы удаляете исторические записи с критерием по дате, то проблемы перформанса могут наблюдаться при первом запуске. Далее, если систематично удалять на ежедневной основе, то не вижу особых проблем с производительностью. Как-то так.
За это сообщение автора поблагодарили: mazzy (2), skuull (2).