Форум: "Базы";
Текущий архив: 2004.12.12;
Скачать: [xml.tar.bz2];
ВнизЕсть ли альтернатива запросу с whrere in Найти похожие ветки
← →
DimonNew (2004-11-15 14:03) [0]Привет, помогите пож-та. Есть Query, в который вставляется строка примерного вида с
where field1 in (123,...,544)
. То, что перечисляется в in, заполняется как стока в Delphi и может быть несколько сотен чисел в ней. Так вот, программа зависает на некоторое время во время выполнения запроса и потом выдает ошибку, что истек TimeOut. Увеличение его не помогает. Подскажите пож-та, как можно избавиться от этого, может альтернативный запрос?
← →
clickmaker © (2004-11-15 14:08) [1]если есть непрерывность, то можно частично вместо in юзать between. На крайняк поднять св-во TimeOut у Query (если TADOQuery)
← →
Ega23 © (2004-11-15 14:20) [2]Я думаю, не в in дело.
← →
Layner © (2004-11-15 14:22) [3]123,...,544 - эти числа откуда берете? С др. таблицы? Тогда пожайлуста, пишите так: where field1 in (SELECT id FROM table WHERE ...) На стороне сервера это вычислится моментом.
← →
DimonNew (2004-11-15 14:22) [4]Непрерывности нет. Время увеличил у ADOQuery до 300, прошло без ошибки,но очень долго ждал, пока Open этот запрос сделает.
← →
Ega23 © (2004-11-15 14:26) [5]123,...,544 - эти числа откуда берете? С др. таблицы? Тогда пожайлуста, пишите так: where field1 in (SELECT id FROM table WHERE ...) На стороне сервера это вычислится моментом.
Вопрос спорный. Я бы не стал так категорично утверждать.
← →
Ega23 © (2004-11-15 14:27) [6]Непрерывности нет. Время увеличил у ADOQuery до 300, прошло без ошибки,но очень долго ждал, пока Open этот запрос сделает.
Сам запрос оптимизировать никак?
← →
DimonNew (2004-11-15 14:28) [7]Да это верно Layner © сам пробовал, но эти числа выбирает пользователь, вернее какие-то строки в ListBox, с которыми связаны идентификаторы, их-то я и загоняю в in, если их мало, то проходит запрос нормально, если много, то беда.
← →
msguns © (2004-11-15 14:34) [8]А тупо создать врем. таблицу, проиндексировать ее по "искомому" полю, вогнать туда все значения, отмеченные узером, а потом запустить связанный запрос ?
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.12.12;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.041 c