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

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

Сортировка в TTable [D5, IB5.x]


Uran ©   (2003-10-29 11:20:00) 

Подскажите, как можно сделать сортировку по определенному столбцу в TTable?
Заранее благодарен.


Anatoly Podgoretsky   (2003-10-29 14:04:00) [1]

DenK_vrtz © (29.10.03 14:01) [9]
Без разницы, все обеспечивает БДЕ, посылая запрос с order by


DenK_vrtz   (2003-10-29 14:01:00) [2]

Господа, не знаю как в IB5, но скажем, в ORACLE (работа через BDE) можно даже индесов не создавать, а у TTable в свойстве IndexFieldNames указать имя поля, по которому нужно отсортировать, и все отсортируется без вопросов


Anatoly Podgoretsky   (2003-10-29 13:43:00) [3]

Sandman25 © (29.10.03 12:12) [5]
Понимаю, это подсоединение с помощью БДЕ, поэтому для упорядочивания применимы и индексы, и также сортировка, которая не будет работать поскольку SQL сервер, о чем он и предупрежден, также о порочности самой сортировку вместо упорядочивания индексами или запросами.

Uran (29.10.03 13:16) [7]
Кто мешает, именно так и нужно делать, только в дополнение желательно отказаться от БДЕ, в пользу других движков доступа, БДЕ для ИБ не очень удачный выбор.
В ТТable тоже можно сделать, но смотри все, что написано выше. Есть еще много причин не использовать ТТable для ИБ, все равно это будет преобразовано в серию запросов.


Uran   (2003-10-29 13:16:00) [4]

может я некорректно задал вопрос ...
я имел ввиду именно сортировку значений столбца .. по убыванию либо по убыванию .. т.е в TQuery я бы сделал через SQL "select * from table order by stolbec" .. так вот интересно можно ли тоже самое сделать в ТТable , т.е отобразить значения из базы отсортированные по определенному полю!


MsGuns   (2003-10-29 13:14:00) [5]

TClientDataSet ?


Sandman25   (2003-10-29 12:12:00) [6]

[4] Anatoly Podgoretsky © (29.10.03 12:02)

Вы уверены, что правильно понимаете, чего хочет автор? Он же в первом посте написал о сортировке TTable, а не Table. Именно о сортировке при выводе он и говорит ИМХО.

[3] Uran (29.10.03 11:47)
Да, для SQL серверов в очень редких случаях применяется TTable. Он годится только для вывода справочников вместо TQuery с "select * from table"


Anatoly Podgoretsky   (2003-10-29 12:02:00) [7]

Uran (29.10.03 11:47) [3]
TQuery вообще этого не поддерживает, только прямое обращение к БДЕ через функцию DbiSortTable
Но зачем тебе это нужно, весь мир давно от жтого ушел, может ты неправильно представляешь работу с базами?
Прочитай еще раз "используй упорядочивание выводаили индексами, или запросами"


Uran   (2003-10-29 11:47:00) [8]

Дело в том что нужно доработать не мою программу ... и там использовались именно ТТаble ...и надо сделать там сортировку по полю varchar ... т.е я как понимаю проще переделать все с TQuery?


Anatoly Podgoretsky   (2003-10-29 11:42:00) [9]

Не стоит делать сортировку, чрезвычайно медленная операция, отказались в начале 80 годов, вместо этого используй упорядочивание вывода или индексами или запросами.
Но я сомниваюсь, что для IB вообще существует возможность сортировки, в отличии от декстопных баз.
Хотя попробуй DbiSortTable, но там в примечание написано SQL: DbiSortTable is not supported with SQL tables


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

Сделать index и указать его имя в Table.IndexName


Наверх

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