![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Ускорение выполнения SQL - запросов [D6, Paradox]
saNat © (2004-07-24 00:55:00)Доброго времени суток.
Сейчас работаю над первым реальным проектом. Нужно написать БД. Не хотелось использовать визуальные компоненты bd*, поэтому использую запросы SQL. Однако при их выполнении возникают задержки, причем достаточно заметные.
Подскажите пожалуйста, что можно сделать для ускорения работы. Могу скинуть на Ваш E-Mail исходники (~90Kb в архиве)
С уважением, ЕВА
saNat (2004-07-29 07:34:00) [21]to GanibalLectorну да я сильно и не нервничаю [30] :-) а переделать, конечно, можно, но смысл терять время - ведь действия выполняемые мной с помощью методов ReadBD и WriteBD по сути аналогичны компонентам DBGrid и т.п. с той лишь разницей, что я хотел сделать их заточенными под выполнение конкретных действий в своем приложении. переделать не поленюсь.
С уважением...
GanibalLector (2004-07-29 00:49:00) [22]2 saNat
Уважаемый ,Вы бы успокоились и попробовали сделать так как я говорил.Замочить все StringGrid-ы и вместо них поставить DBGrid-ы.Дальше,замочить ТОТ класс и вообще забыть про классы...а использовать DataSourсe и связанные с ним гриды.
saNat (2004-07-28 22:15:00) [23]to Fayуж у кого, а у Вас все исходники имеются и претензии по этому поводу мне непонятны [24]
P.S. С уважением...
sniknik (2004-07-28 20:44:00) [24]> Почему тормозит на SQL.Open?
а почему бы ему не потормозить в удовольствие? ведь это вам надо чтобы было быстро а ему абсолютно пофигу, оно делает то что ты написал а не то что тебе хочется.
ответь на это и я отвечу на твой (с определенной степенью вероятности, придется ведь догадыватся).
bushmen (2004-07-28 20:22:00) [25]> Fay © (28.07.04 20:16) [26]
Все может быть в этом мире бушующем :)
Fay (2004-07-28 20:16:00) [26]2bushmen © (28.07.04 20:04) [25]
Может быть. Но вдруг, после завершения первого реального проекта, автор продолжит разработку нереальных? 8)
bushmen (2004-07-28 20:04:00) [27]> Творческих Вам успехов.
Которых, как я предвижу, в ближайшем будущем не предвидется.
Fay (2004-07-28 19:34:00) [28]Уважаемый автор! Вы ваще уже совсем офигели, что-ли?!
>> Почему тормозит на SQL.Open?
Да потому! Много здесь кто видел структуру базы и примеры запросов? Не очень. Вы бы ещё спросили - "А почему (желательно поподробней!) моя программа работает не совсем так, как я хочу?".
Всё уже сказано, и с Вашей стороны, видимо, ничего предпринято не было.
Творческих Вам успехов.
saNat (2004-07-28 19:24:00) [29]Попробовал я сделать базу в Access - скорости не прибавилось... Почему тормозит на SQL.Open?
Sergey13 (2004-07-27 16:30:00) [30]2saNat ©
ИМХО, у тебя в голове каша приличная.
>"Драйверы в памяти"
>"Не хотелось использовать визуальные компоненты bd*, поэтому использую запросы SQL."
>У меня был выбор между Oracle и Paradox
Ты наверное про индексы только слышал и запросы пишешь только типа select * from Table. Будь попроще, спрашивай поконкретнее.
sniknik (2004-07-27 16:18:00) [31]Sandman25 © (27.07.04 15:45) [20]
> [19] saNat © (27.07.04 15:41)
> Это неверно.
ну не всегда, в случае когда движок реализован как COM обьект, именно так и происходит, первый вызов. только не на SQL.Open а на конект.Open (и при условии что ктото гдето не работает с ним).
ADO это ком обьект.
> то как можно держать драйвер в памяти на время работы приложения?
в общем случае, без указания движка, говорить не о чем.
но даже в случае когда это так и есть главное не закрывать конект. (хотя даже закрытие еще не все, оно не выгружается сразу а только после какогото таймаута)
Sandman25 (2004-07-27 15:45:00) [32][19] saNat © (27.07.04 15:41)
Это неверно.
saNat (2004-07-27 15:41:00) [33]Один из моих знакомых выдвинул версию - каждый раз при выполнении SQL.Open происходит загрузка и выгрузка драйвера и на это уходит время - та самая задержка. На сколько это верно и если это так, то как можно держать драйвер в памяти на время работы приложения?
Sandman25 (2004-07-27 15:40:00) [34][17] saNat © (27.07.04 15:39)
В данном контексте XP - это хранимые процедуры, а не Windows XP :)
saNat (2004-07-27 15:39:00) [35]А как связан Paradox и XP? [4][5]
DenK_vrtz (2004-07-26 09:45:00) [36]>Sergey13 © (26.07.04 09:39) [14]
>А чем был обусловлен выбор?
а на денюжке всего две стороны, не той стороной упала :)
bushmen (2004-07-26 09:41:00) [37]>У меня был выбор между Oracle и Paradox
Никаких других СУБД не знаешь? :)
Sergey13 (2004-07-26 09:39:00) [38]2saNat © (25.07.04 23:59) [10]
>У меня был выбор между Oracle и Paradox
Я тащусь. 8-) Ты не то выбрал! 8-)))))
А чем был обусловлен выбор? Наличием левых компактов, знаниями или еще чем?
Fay (2004-07-26 09:19:00) [39]1) Клиентможет стоять на машине и попроще.
2) А какой объём данных предвидится?
saNat (2004-07-26 07:27:00) [40]> Fay © (26.07.04 02:26) [11]
> 1) Чем Вам Oracle не угодил?!
Может я ошибаюсь, но Oracle требует неплохую машину для работы. А у меня клиентское приложение может работать на машинах типа P-II