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

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

Несколько запросов в 1-м TQuery [D6, MSSQL]


Страницы:   1 2

www ©   (2003-12-18 16:53:00) 

Это возможно?:)


www   (2004-01-08 17:15:00) [1]

BDE
Не ADO:)


KSergey   (2003-12-19 12:11:00) [2]

Ау, люди!
Вы о чем?
Автора перечитайте ;) А то начали опять пальцы гнуть...

Автору: так какие компоненты доступа используем и допустим ли переход на ADO? Там ответ на поставленный вопрос - да.
Впрочем, еще уточните какого рода "несколько запросов"


Sergey13   (2003-12-19 12:02:00) [3]

2Ega23 © (19.12.03 11:59) [31]
Я тоже.


Ega23   (2003-12-19 11:59:00) [4]


> Это понятно. Я про "пустой" экземпляр без учета текста сиквела

Я думаю, копейки.


Sergey13   (2003-12-19 11:57:00) [5]

2Ega23 © (19.12.03 11:47) [29]
Это понятно. Я про "пустой" экземпляр без учета текста сиквела.


Ega23   (2003-12-19 11:47:00) [6]


>
> ЗЫ:Вот интересно на сколько "утяжеляется" прога при использовании
> одного "лишнего" экземпляра TQuery? Никто не мерял?

Если он ОТКРЫТ, и запросик "тяжелый", то может прилично утяжелиться. У меня до метра вырастала (приблизительно, конечно).


Sergey13   (2003-12-19 11:41:00) [7]

2Sandman25 © (19.12.03 11:23) [25]
Да я не спорю что можно. Но...
На хрена это надо? Если проект достаточно большой, то выигрыш от "динамики" съедается ненастроенностью (или тяжелой настраиваимостью) отдельных сиквелов (вопрос по сиквелы вроде был а не про гриды)+количество самописного кода разрастается на глазах(а значит и потенциальных ошибок). Сопровождать такой чужой проект - вообще ж... Отыскивать где и когда кто-то устанавливает ширину колонки - бр-р-р-р. Я уж лучше мышкой на форме раздвину. 8-)
Конечно если рассматривать какие то конкретные таблички (простенькие справочники например), то путь не тупиковый. Но как общий принцип - увольте.

ЗЫ:Вот интересно на сколько "утяжеляется" прога при использовании одного "лишнего" экземпляра TQuery? Никто не мерял?


Sandman25   (2003-12-19 11:36:00) [8]

[26] Ega23 © (19.12.03 11:30)

Смысл только один - экономия ресурсов за счет создания одного экземпляра объекта вместо нескольких. То есть обычно смысла нет :)


Ega23   (2003-12-19 11:30:00) [9]


> Sandman25 © (19.12.03 11:23) [25]

Да я не спорю, вещь удобная
Можно вообще без формы всё сваять динамически, только смысл?


Sandman25   (2003-12-19 11:23:00) [10]

[24] Sergey13 © (19.12.03 11:19)

Пример:
function TfrReports.AddColumn(const AFieldName, ACaption: string; CharCount: integer; AWordWrap: boolean = false): TColumnEh;
var
NewWidth: integer;
begin
Result := dgData.Columns.Add;
with Result do
begin
FieldName := AFieldName;
Title.Caption := ACaption;
NewWidth := CharCount*FOneCharWidth;
if NewWidth <> 64 then
Width := NewWidth
else
Width := 65;
WordWrap := AWordWrap;
end;
end;

AddColumn("acount","Количество", 6)

Очень удобно, если один грид используется для отображения нескольких наборов данных. Можно вообще своего наследника написать.


Sergey13   (2003-12-19 11:19:00) [11]

2Sandman25 © (19.12.03 11:14) [22]
>Это и в run-time настроить можно.
Но геморойно-о-о-о!!! 8-)


Ega23   (2003-12-19 11:18:00) [12]


> Это и в run-time настроить можно.

Можно. Но сложнее. А, забыл: ещё поля вычисляемые есть.


Sandman25   (2003-12-19 11:14:00) [13]

>Ещё в дизайн-тайме можно вид этого грида настроить - ширина колонок, фонты и т.п.

Это и в run-time настроить можно.


Ega23   (2003-12-19 11:13:00) [14]


> По поводу ресурсов - я имел ввиду не освобождение от результата
> работы запроса, а освобождение от переменных класса ТQuery

Это понятно, но они, вроде, не так уж много "весят".

> to Ega23
> Если существует необходимость наблюдать все гриды одновременно,
> то естественно - по DataSet на грид

Ещё в дизайн-тайме можно вид этого грида настроить - ширина колонок, фонты и т.п.


hirlik   (2003-12-19 11:07:00) [15]

to Ega23
Если существует необходимость наблюдать все гриды одновременно, то естественно - по DataSet на грид
По поводу ресурсов - я имел ввиду не освобождение от результата работы запроса, а освобождение от переменных класса ТQuery


Ega23   (2003-12-19 10:45:00) [16]


> to Ega23
> И создавать несколько переменных класса TQuery? (проще,
> а если надо экономить ресурсы...)

Я обычно на каждый грид свой отдельный кверь в дизайн-тайме создаю. Плюс несколько для динамического исполнения. А ресурсы экономить - надо просто запросы эти вовремя закрывать.


Sandman25   (2003-12-19 10:30:00) [17]

Неужели никто не использует Database.Execute?

Если лень возиться с самостоятельным созданием параметров, можно использовать Query, у которого динамически менять SQL.


sniknik   (2003-12-19 10:30:00) [18]

чего только люди не придумают лиш бы ADO не учить... ;о))


alex-xx   (2003-12-19 10:20:00) [19]

to Ega23
И создавать несколько переменных класса TQuery? (проще, а если надо экономить ресурсы...)

надобы уточнить вопрос. Какие именно запросы?
в одном Qvery например:
- запрос можно формировать динамически (и иметь разные запросы при разных обстоятельствах)
- можно использовать UNION (и иметь один из нескольких SELECT один НД на выходе(правда SELECTы должны возвращать одинаковые по структуре данные))
- в конце-концов можно перенести все это хозяйство на сторону сервера в виде ХП.


Ega23   (2003-12-19 09:56:00) [20]

А вообще-то что мешает на каждый запрос свой TQuery положить? Так вроде проще.


Страницы:   1 2

Наверх

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