|
0 / 0 / 0
Регистрация: 06.04.2011
Сообщений: 83
|
|
MS SQL Превышение времени обработки SQL-запроса08.10.2021, 18:39. Показов 3994. Ответов 31
Проблема возникает при направлении через ADOQuery запроса на добавления записи(запрос очень большой реализован через выполнение функции минимизировать не получится), запрос проходит через гребанную тучу условий в самом Delphi (через IF) среди которых 2 подзапроса с отдельными Query и все это великолепие в цикле. На тысячной (последний запуск прервался на 1128) строке выскакивает ошибка на русском "Превышено время обработки запроса"
Предвосхищая ваш вариант перед любым Query стоит ADOQuery2.CommandTimeout := 2400; перед ADOConnection стоит ADOConnection1.CommandTimeout:=2400; и это не помогает! Возможно ли как-то еще это исправить? про запрос скажу так во входящих данных 62 (из входящих можно но от силы 8-9)переменных а выходящих 92 (выкинуть из выходящих ни одну нельзя) сам запрос конечно тяжелый но с более простым запросом происходила таже картина. Возможно нужно как-то чистить кеш на стороне SQL но я не знаю способа. Перед выполнением любого ADOQuery его текст зачищается в ноль! данные передаются в SQL в виде текста и там же хранятся также в виде текста с запасом(Хотя при передачи на обработку ограничения в притык но если бы это было причиной, то оповещал бы о неправильности составления запроса) просматривал странички тут Проблема с timeout при работе через ADO-компоненты с MS SQL и тут Ошибка - Время ожидания истекло.
0
|
|
| 08.10.2021, 18:39 | |
|
Ответы с готовыми решениями:
31
Превышение времени ожидания при конекте к SQL Server 2000 (+) Отображение времени обработки запроса |
|
0 / 0 / 0
Регистрация: 06.04.2011
Сообщений: 83
|
|||||||||
| 15.12.2021, 10:18 [ТС] | |||||||||
Мдааааа это будет больно я когда фильтр к проге делал чуть на стены кидаться не начал а тут ещё этот процесс усложнять. И да как объяснить SQL что мне нужны данные частями? create и drop временной табличкой и в нее тянуть частями? я ооочень надеялся обойтись без временных табличек Добавлено через 4 минуты И как поймать момент что все данные уже просмотрены со стороны Delphi Добавлено через 3 минуты
0
|
|||||||||
| 15.12.2021, 10:21 | |
|
а куда вы выводите 230к строк? Stringgrid? ListView?
может у вас проблемы именно с выводом такого количества? Добавлено через 31 секунду почему не разбить на страницы по 10к и не сделать кнопки Вперед и Назад?
0
|
|
|
5393 / 1465 / 513
Регистрация: 31.05.2012
Сообщений: 5,153
|
|||||||
| 15.12.2021, 10:30 | |||||||
1
|
|||||||
|
0 / 0 / 0
Регистрация: 06.04.2011
Сообщений: 83
|
|||
| 15.12.2021, 10:36 [ТС] | |||
|
Добавлено через 3 минуты
0
|
|||
|
5393 / 1465 / 513
Регистрация: 31.05.2012
Сообщений: 5,153
|
|
| 15.12.2021, 10:37 | |
Сообщение было отмечено magistrmediv как решение
Решение
1
|
|
|
0 / 0 / 0
Регистрация: 06.04.2011
Сообщений: 83
|
||
| 15.12.2021, 10:44 [ТС] | ||
|
0
|
||
| 15.12.2021, 10:51 | |
|
рекомендую все таки
1. перейти на последнюю делфи 2. использовать Firedac 3. вместо DBgrid использовать что-то нормальное 4. не выводить весь массив пользователю (если им это нужно - выгрузить в эксель) Добавлено через 2 минуты OFFSET появился только в SQL Server 2011 (Denali)
0
|
|
|
5393 / 1465 / 513
Регистрация: 31.05.2012
Сообщений: 5,153
|
|
| 15.12.2021, 10:53 | |
|
Запрос в процедуре, что ли? Тогда смещение и объем выборки параметрами передать, а в процедуре в запросе соответствующие переменные. Должно съесть, если нет - динамический запрос делать. Если же просто запрос без процедуры, то он на стороне клиента модифицируется в программе для каждой порции
0
|
|
|
|
|
| 15.12.2021, 10:56 | |
|
для просмотра лучше пользоваться просто отчетом
не нужен весь безумный функционал DBGrid ну и разбиение на части это абсолютно здравое решение 100% потом еще выяснится, что никто из них не смотрит больше одной )
0
|
|
|
5393 / 1465 / 513
Регистрация: 31.05.2012
Сообщений: 5,153
|
||
| 15.12.2021, 11:00 | ||
|
0
|
||
|
0 / 0 / 0
Регистрация: 06.04.2011
Сообщений: 83
|
||||
| 15.12.2021, 11:05 [ТС] | ||||
|
Firedac не любитель придерживаюсь принципа работает не трожь Вы издеваетесь я делаю прогу как раз чтоб они ушли от Excel SQL Server 14 Добавлено через 1 минуту
0
|
||||
| 15.12.2021, 12:12 | |||
|
главное не работать в экселе, а пользоваться только как отчетами
0
|
|||
| 15.12.2021, 12:12 | |
|
Как включить в логах запись времени обработки каждого запроса? SQL запрос, расчёт времени обработки заказа Переменные времени для SQL запроса Превышение лимита времени Превышение время выполнение запроса (Timeout) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
|
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
|
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ
Основная суть и тезисы по измерениям:
0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема.
Объект не может перемещаться в 0D.
1D (Первое измерение):. . .
|