Цитата:
Сообщение от
Shirmin Oleg
Я не знаю, как в профайлере посмотреть на SQL запрос, подскажите, пожалуйста.
О, блин...
Сначала обругали Аксапту ("тормозит", "от безысходности"), а теперь такая фигня выясняется.
В общем, не нужно мучать Аксапту прямыми запросами. У нее и штатными неплохо получается.
Убежден, что у вас какие-то настройки остались, из-за которых Аксапта переходит в режим удаления каждой записи по отдельности. Но
этим сообщением разожгли любопытство не-по-деццки
Давайте попробуем дойти до конца этой истории.
Есть два варианта:
1.
Предлагаю свою совершенно бесплатную помощь, чтобы разобраться в данном конкретном случае с медленным удалением командой delete_from.
В этом варианте нужно от вас:
1.1. Доступ к вашей Аксапте и к профайлеру вашего SQL.
1.1.1. Для работы с профайлером нужен будет права администратора SQL.
1.1.2. Можно использовать режим, когда вы сами подключаетесь к Аксапте и к SQL, а мне расшариваете экран (штатный виндовый Ассистент, расшаривание экрана в Skype или любая аналогичная технология). Я по микрофону или в чате буду говорить что надо сделать.
1.2. Назначьте время (любое, кроме среды, можно выходные, можно ночером). Двух-трех часов будет достаточно чтобы запустить несколько раз это несчастное удаление и определить что у вас случилось. Желательно, чтобы в это время пользователи не работали (но можно и при работающих)
1.3. Свяжитесь со мной (в личку, на
mazzy@mazzy.ru, по скайпу mazzy.ru, по телефону +7 (903) 771-66-00.
2.
Попробуйте таки разобраться самостоятельно.
Я буду показывать на SQL 2008 Eng. В SQL 2005 аналогично.
2.1.
запустите профайлер.
2.2.
Запустите новую сессию File \ New Trace
2.3.
В окне укажите сервер, где крутится SQL с базой Аксапты, логин и пароль
2.4.
В следующем окне выберите шаблон Standard (он ставится по умолчанию)
2.5.
Если вы запускаете профилирование при работающих пользователях, то вам нужно будет отфильтровать только свои запросы, чтобы не мучаться с чужими.
Этот шаг - самый сложный для объяснения (не могу придумать как объяснить откуда взять значения фильтров).
Поэтому - сделайте самостоятельное профилирование
при отсутствующих пользователях.
Нажмите Run.
2.6. Поначалу Профайлер покажет кучу всего (кэширование, syslastvalue)
сотртите ненужное ластиком
дождитесь момента когда новые строчки перестанут поступать в окно.
запустите вашу обработку в Аксапте
2.7. остановите профилирование через полминуты-минуту после запуска (чтобы не набирать новых строчек)
2.8. при помощи поиска Ctrl+F найдите строчки, в которых упоминается ваша навороченная таблица.
Сделайте скриншоты запросов к вашей таблице и запросов вокруг, положите сюда. Интересует текстовая часть в нижней половине окна.