Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

большой SQL запрос


S{NIK} ©   (2006-04-18 15:04:00) 

что делать если при обработке запроса SQL на выборку система выдает сообщение "слишком большой SQL запрос"


Sergey13   (2006-04-18 16:13:00) [1]

>Суть в том, что это едиственное что у меня есть и это единственное чем я могу оперировать
Так оперировать можно по разному. Ты для "автогенерации" просто в коды конкретные тыкаешь что-ли?


S{NIK}   (2006-04-18 16:03:00) [2]


> а нельзя ли этот фильтр сконструировать в виде запроса,
> а не лепить список ID


было бы конечно очень неплохо, но невозможно


> Ну сразу, как минимум
> where ID in (..., ..., ..., ....)
> Это как минимум на 6 байт меньше для каждого ID.


а вот этого не знал, Thanks


S{NIK}   (2006-04-18 15:57:00) [3]


> Расшифровать бы. Кем определенные? По какому критерию определенные?


система сложна, не буду вдаваться в подробности. Суть в том, что это едиственное что у меня есть и это единственное чем я могу оперировать


Desdechado   (2006-04-18 15:57:00) [4]

а нельзя ли этот фильтр сконструировать в виде запроса, а не лепить список ID
ведь появится больше записей, удовлетворяющих фильтру, и все, гаплык


Sergey13   (2006-04-18 15:48:00) [5]

>Из базы должны выбраться записи содержащие в поле ID определенные значения, данные записи попадают под фильтр
Расшифровать бы. Кем определенные? По какому критерию определенные?


Johnmen   (2006-04-18 15:46:00) [6]

Для таких выборок предпочтительнее через временную таблицу с этими самыми ID.


Ega23   (2006-04-18 15:44:00) [7]

На пять. Запятая появляется. Но всё равно меньше.


Desdechado   (2006-04-18 15:44:00) [8]

видимо, таблица на 200 полей
и запрос на update в TUpdateSQL с названиями всех полей, явно перечисленными и в SET, и во WHERE


Ega23   (2006-04-18 15:43:00) [9]


> SELECT .... ID=... OR ID=...  и тд.


Ну сразу, как минимум
where ID in (..., ..., ..., ....)
Это как минимум на 6 байт меньше для каждого ID.


Ega23   (2006-04-18 15:42:00) [10]


> ЗЫ. Только один раз видел запрос (написанный руками), которому
> 4 байт не хватило до потолка оракла (кажись 64Кб). Это был
> мрак.


Хотел бы посмотреть.
И на запрос, и в глаза аффтару...  :о)


S{NIK}   (2006-04-18 15:41:00) [11]


> Есть мнение, что что-то не так в Датском Королевстве...


Да нет все должно быть ОК. Tracing показал что запрос генерится корректно, проблема в том, что при обработке большого объема информации этот запрос увеличивается в геометрической прогрессии.  
Хотя может я что-то делаю не правильно (с базами недавно).

... Вообщем следующая фигня. Из базы должны выбраться записи содержащие в поле ID определенные значения, данные записи попадают под фильтр (и их - ID единственно что мне известно), и в SQL'e они так и идут
SELECT .... ID=... OR ID=...  и тд. Использую  MS Jet Database Engine.


Johnmen   (2006-04-18 15:33:00) [12]


> Автоматически генерится.


Что за автомат? Какой конструкции?


ANB   (2006-04-18 15:33:00) [13]


> S{NIK}   (18.04.06 15:22) [5]

Значит нужно урезать запрос. Например, перетащить часть во вьюхи.

ЗЫ. Только один раз видел запрос (написанный руками), которому 4 байт не хватило до потолка оракла (кажись 64Кб). Это был мрак.


Ega23   (2006-04-18 15:24:00) [14]


> Автоматически генерится.


Есть мнение, что что-то не так в Датском Королевстве...


S{NIK}   (2006-04-18 15:22:00) [15]


> Хм... А кто же его написал?


Автоматически генерится.


Sergey13   (2006-04-18 15:18:00) [16]

- Ну и запросы у вас, - сказала база данных и повисла.
(с)тырено


Johnmen   (2006-04-18 15:18:00) [17]


> Точно не знаю


Хм... А кто же его написал?


S{NIK}   (2006-04-18 15:14:00) [18]


> Это какой-же он у тебя????


Точно не знаю не проверял, но судя по всему огромный


Ega23   (2006-04-18 15:06:00) [19]

Это какой-же он у тебя????


Наверх

Титульная страница Поиск, карта сайта Написать письмо