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

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

TQuery против TTable


Страницы:   1 2

Delphi basic ©   (2006-06-23 11:42:00) 

Для клиент-серверного приложения, когда желательно уменьшить объем сетевого трафика, в хелпах советуют использовать TQuery. А есть ли другие причины? Например, пусть имеется 1000 строк в таблице, из них отбирается 10. Что передается клиенту в каждом случае:
IBQuery - только 10 строк, отобраных SQL-запросом,
IBTable - вся 1000, из которой уже на клиенте отфильтровывается 10?


Desdechado   (2006-06-23 12:35:00) [21]

> Так, а с deadlock'ами как быть?
вот так: ibase.ru


Sergey13   (2006-06-23 12:34:00) [22]

> [10] Delphi basic ©   (23.06.06 12:31)
> Так, а с deadlock'ами как быть?

Не допускать!!! 8-)


Danilka   (2006-06-23 12:31:00) [23]

[7] Delphi basic ©   (23.06.06 12:27)
> Тогда, получается, если в таблице 1млн. записей, из которых,
> допустим, нужно отобрать только 100, то TTable все их сначала
> затащит на клиента, а потом будет фильровать? жуть...

ага.


Delphi basic   (2006-06-23 12:31:00) [24]

Так, а с deadlock'ами как быть?


Danilka   (2006-06-23 12:31:00) [25]

[5] Delphi basic ©   (23.06.06 12:21)
Так и будет, если в IBQuery запрос, возвращающий только 10 записей, а в таблице, из которой отбираются данные 1000 записей.

Вообще, неплохо было-бы почитать теорию про РСУБД, ибо ТКвери и прочие, отличные от ТТабле это уже средство работы именно с РСУБД.

[6] Ega23 ©   (23.06.06 12:24)
> СУБД, кстати, какая?

Судя по IB% - IB :)


Sergey13   (2006-06-23 12:30:00) [26]

2 [7] Delphi basic ©   (23.06.06 12:27)
>СУБД Firebird 1.5
Тогда твой ТТабл - это все равно законспирированный ЕКвери, только с дубово написанным запросом. Не умеют сервера по другому общаться, короме как на SQL.


Delphi basic   (2006-06-23 12:27:00) [27]


> Ega23 ©   (23.06.06 12:24) [6]
> Так ты сам уже всё ответил...
> СУБД, кстати, какая?

Вообще это был вопрос насчет того, так это или не так.
Тогда, получается, если в таблице 1млн. записей, из которых, допустим, нужно отобрать только 100, то TTable все их сначала затащит на клиента, а потом будет фильровать? жуть...
СУБД Firebird 1.5


Ega23   (2006-06-23 12:24:00) [28]

Так ты сам уже всё ответил...
СУБД, кстати, какая?


Delphi basic   (2006-06-23 12:21:00) [29]


> IBQuery - только 10 строк, отобраных SQL-запросом,
> IBTable - вся 1000, из которой уже на клиенте отфильтровывается
> 10?

Насчет этого кто-нибудь может ответить?


Sergey13   (2006-06-23 12:18:00) [30]

А чего не в "Потрепаться" сразу?


Ega23   (2006-06-23 12:14:00) [31]


> попробовал сделать то же самое с помощью TQuery - жутко
> неудобно.


Ну если ты привык гланты вырезать через задницу - то конечно вырезать их через рот тебе будет жутко неудобно...


Desdechado   (2006-06-23 11:58:00) [32]

Неудобно штаны через голову одевать. (с)
TQuery дает гибкость. Особенно на базах не из 1 таблицы, когда можно обратиться одним запросом и получить "выжимку" из многих табдиц по условиям и с сортировками, причем толькотех данных, какие нужны.
Обновления тоже делаются запросами, которые можно вписать заранее в соответствующие свойства (и обновления делаются автоматически) или отдельно для вящей гибкости обрабатывать руками.


Delphi basic   (2006-06-23 11:45:00) [33]

Просто раньше работал с помощью TTable. Теперь попробовал сделать то же самое с помощью TQuery - жутко неудобно. Во-первых, в листинг сразу влезает куча строк, в которых закидываются запросы; во-вторых, какие-либо изменения данных делать очень неудобно.


Страницы:   1 2

Наверх

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