Форум: "Базы";
Текущий архив: 2005.08.07;
Скачать: [xml.tar.bz2];
ВнизКоличество компонентов Query Найти похожие ветки
← →
Tirex (2005-06-29 09:36) [0]Вообщем ко всем кто занимается базами: При разработке программы вы для каждой формы (раздела программы работающего с данными) добавляете в datamodule отдeльный Query? Или кидаете их 3,4 штуки и а потом из программы вот так:
Dm.IBQuery3.SQL.Clear;
Dm.IBQuery3.SQL.add(" ... ");
Dm.IBQuery3.Open;
Собстаенно я поступаю вторым способом. Потеряет ли программа в производительности в каком то из этих случаев?
Просто если учесть что программа будет разрастаться и скоро форм (разделов) будет больше.
← →
Johnmen © (2005-06-29 09:43) [1]Применяются виды использования:
1. Компонент кидается в датамодуль и жёстко прописывается запрос.
2. То же самое, но текст запроса модифицируется в рантайме по мере необходимости.
3. Динамически создается экз.компоненты с необх св-вами, вып-ся, разрушается.
Все способы имеют право на жизнь. Всё зависит от конкр.ситуации.
← →
Tirex (2005-06-29 09:52) [2]первые два ясно а по поводу 3-го это так?:
var
tb1: TIBQuery;
begin
tb1:=TIBQuery.Create(self);
tb1.sql.add(" ... ");
tb1.Free;
end
← →
Johnmen © (2005-06-29 09:54) [3]Да.
← →
Жук © (2005-06-29 10:04) [4]ИБДатаСеты кидаю в дизайне + 1 ИБСКЛ, запросы в котором меняю динамически по мере надобности. Если 1ИБСКЛя не хватает, то создаю в ран-тайме.
← →
Tirex (2005-06-29 10:05) [5]2 Жук
Сколько форм (разделов ) в программе ?
← →
size=20 (2005-06-29 10:06) [6]1. способ не очень гуд, потому как тяжело рыться в поисках лукап полей и текстов запросов.
3. Более мне нравится + все это обернуть в виде обьекта.
← →
Smash (2005-06-29 10:56) [7]size=20 (29.06.05 10:06)
замеТТе, что динамическое создание и удаление чего-бы то нибыло - это никак не прирост производительности
← →
size=20 (2005-06-29 11:00) [8]
> замеТТе, что динамическое создание и удаление чего-бы то
> нибыло - это никак не прирост производительности
да, если єто делать каждую секунду или и того меньше. нужно думать как сказал Johnmen
← →
Sergey13 © (2005-06-29 11:25) [9]2[6] size=20 (29.06.05 10:06)
>1. способ не очень гуд, потому как тяжело рыться в поисках лукап полей и текстов запросов.
Если это про
>[1] Johnmen © (29.06.05 09:43)
>1. Компонент кидается в датамодуль и жёстко прописывается запрос.
То не совсем понятно почему. Как раз таки все в одном месте. А когда все в рантайме еще надумаешься, что за запрос не работает. К тому же лень бывает "возиться" с параметрами и получаем DSQL. 8-)
Я в основном работаю по 1 варианту. Плюс [4] Жук © (29.06.05 10:04).
← →
Romkin © (2005-06-29 11:29) [10]У меня каждый датамодуль - определенный объект. Счет, например. В нем запрос для списка и запросы для редактирования собственно счета. Методы, эссно, прописаны, вроде "Создать счет", "открыть счет", "Показать счет". Запросы жестко прописаны - терпеть не могу в коде запросы писать, это ж неудобно!
← →
evvcom © (2005-06-29 12:52) [11]У меня текущий проект содержит один DM, на котором только DBSession и ConnectDialog. Остальные компоненты - это OraStoredProc, которые лежат прямо на форме, и которыми я стараюсь ее не перегружать. 2 или 3 SP форму не перегружают.
← →
Sergey13 © (2005-06-29 13:15) [12]2 [11] evvcom © (29.06.05 12:52)
Т.е. на каждой форме тебе хватает 2-3 SP и для визуализации и для обработки?
← →
Anatoly Podgoretsky © (2005-06-29 13:30) [13]Tirex (29.06.05 09:36)
Столько сколько считаешь нужным, границы таковы - от одного единственного компонента до по компоненту на каждый запрос, а некоторые воообще ни одного компонента не держут.
У всех трех вариантов свое назначение, достоинства и свои недостатки.
← →
evvcom © (2005-06-29 13:58) [14]
> Т.е. на каждой форме тебе хватает 2-3 SP и для визуализации
> и для обработки?
Я сейчас работаю с Oracle через ODAC. В большинстве случаев хватает одного единственного TOraStoredProc и для визуализации, и для обработки, т.к. там имеются свойства SQLInsert, SQLUpdate, SQLDelete, SQLLock, SQLRefresh. Ну и естественно TDataSource.
← →
КиТаЯц © (2005-06-29 14:18) [15]У меня 2 + 3
← →
Tirex (2005-06-29 16:09) [16]Вообщем картина вырисовывается такая:
1 DataModule
1 Database , 1 Transaction и т.д.
1 Datasource (да кстати все IBQuery сколько есть подключаю к одному DataSource)
и Query по вкусу.
← →
Sergey13 © (2005-06-29 16:11) [17]2[16] Tirex (29.06.05 16:09)
>1 Datasource (да кстати все IBQuery сколько есть подключаю к одному DataSource)
Пачиму так?
← →
Tirex (2005-06-29 17:01) [18]Одновременно два мне пока не требуется.
Обычно вывожу списки элементов в ComboBox.
Определяю индекс выбранного и т.д.
← →
Tirex (2005-06-29 17:01) [19]Удалено модератором
← →
Sergey13 © (2005-06-29 17:04) [20]2[18] Tirex (29.06.05 17:01)
Занятное у тебя приложение.
← →
Anatoly Podgoretsky © (2005-06-29 17:07) [21]Tirex (29.06.05 17:01) [18]
При этом ты обязан отказаться от персистентных полей и параметров. Также персистентных настроек гридов.
← →
Tirex (2005-06-29 17:52) [22]>При этом ты обязан отказаться от персистентных полей и
> параметров. Также персистентных настроек гридов.
DBGridа у меня всего два, поля прописаны в ColumnsEditor.
Datasource для них подключаю перед вызовом формы.
> Занятное у тебя приложение.
Нет ну просто у меня все данные отображать в Table и Grid ну никак не пойдет. Суть в том что первой ну допустим выбирается спе-сть, потом по этой спец-сти кафедра ну и т.д. вообщем одно за другое. Так что самый удобный вариант это ComboBox, ListBox иногда DBGrid.
Что я не так делаю
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2005.08.07;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.052 c