C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Сортировка данных с помощью компонента TTable, Сортировка данных
dimidrol
Отправлено: 09.08.2005, 11:20


Дежурный стрелочник

Группа: Участник
Сообщений: 36



Здрасьте всем,

Кто знает подскажите, можно ли отсортировать данные ввыводимые компонентами ТТаble и TDBGrid.
При этом не используя никаких других компонентов (TQuery, TRxMemoryData или ТDBGridEh1).
Если можно, просьба, приведите пример кода, а то я новичок в C++ Builder 6.

П.С.: искал по форуму, но там в ответах по сортировке присутствуют выше упомянутые компоненты.

Заранее спасибо!
AVC
Отправлено: 09.08.2005, 11:33


Ветеран

Группа: Модератор
Сообщений: 1583



QUOTE

можно ли отсортировать данные ввыводимые компонентами ТТаble и TDBGrid.
При этом не используя никаких других компонентов

(TDBGrid здесь не причем)
Можно, если открыть таблицу с соответствующим индексом (вспомним методы доступа в dBase). А индекс это свойства Table.

PS. На SQL'евских серверах так делать нельзя.
Vlad
Отправлено: 09.08.2005, 11:55


Машинист паровоза

Группа: Участник
Сообщений: 231



Что бы получить исчерпувующий ответ, указывайте БД!!!!!
olegenty
Отправлено: 09.08.2005, 12:04


Ветеран

Группа: Модератор
Сообщений: 2412



да и вообще вопрос немного странный. используя только Ttable и TDBGrid. ну на грид ограничение — это наздоровье. а вот TTable-то почему? TQuery, например, лучше...
dimidrol
Отправлено: 09.08.2005, 13:11


Дежурный стрелочник

Группа: Участник
Сообщений: 36



Спасибо всем кто откликнулись.

по порядку:

1. таблица Paradox 7.0
2. TQuery хотел бы и сам использовать smile.gif но при запуске етой проги с использованным TQuery, на другом компе ( на котором не установлен Билдер ) еррорит AccessViоlation, при чем в тот момент, как питаюсь сделать

CODE

Query1->SQL->Text = "select * from ТАБЛИЦА order by id";
Query1->Open();


3. Была просьба с примерами кода, это к тому как использовать индексы для сортировки? То что их для етого используют я уже слышал, но вот как?

Спасибо еще раз!
olegenty
Отправлено: 09.08.2005, 13:19


Ветеран

Группа: Модератор
Сообщений: 2412



ответьте кто-нибудь другой, а то я опять буду втирать, то TBDEDataDriver (в этом случае) + TMemTableEh + TDBGridEh = rooolezzz. примеры прилагаются. описания прилагаются. всё прилагается (к библиотеке EhLib)
avc*
Отправлено: 09.08.2005, 13:20


Не зарегистрирован







QUOTE

TQuery хотел бы и сам использовать  но при запуске етой проги с использованным TQuery, на другом компе ( на котором не установлен Билдер ) еррорит AccessViоlation

Лучше разобраться с еррором, а вдруг переход на TTable его не устранит? (BDE на другом компе устанавливать пробовали?).
avc*
Отправлено: 09.08.2005, 13:28


Не зарегистрирован







QUOTE

Была просьба с примерами кода, это к тому как использовать индексы для сортировки? То что их для етого используют я уже слышал, но вот как?

DatabaseName — BCDEMOS
TableName — custoly.db (существуют индексы: Primary, City, Names)
TTable->IndexName = City — сортируем по City
TTable->IndexName = Names — сортируем по Last_Name, First_Name
dimidrol
Отправлено: 09.08.2005, 13:33


Дежурный стрелочник

Группа: Участник
Сообщений: 36



avc* спасибо! это уже ближе к телу smile.gif

смотри эта сортировка, как я понял, производится в режиме АSC ( а-я )
а как делается DESC ( я-а ) ???
avc*
Отправлено: 09.08.2005, 14:15


Не зарегистрирован







Вы же работаете с парадоксом, вам лучше знать. У меня получилось так — захожу в DBD открываю таблицу, прошу реструктуризировать и меняю описание индекса.
PS. Все таки лучше попробовать запустить Query. Как мне помнится (может я ошибаюсь) таблица прадокса может иметь довольно мало индексов.
dimidrol
Отправлено: 09.08.2005, 14:38


Дежурный стрелочник

Группа: Участник
Сообщений: 36



в том то и дело что я как раз не работаю с прикладным вообще!
и всю жизнь исполъзовал MySQL для WEB приложений.

заплачу лутче деньгу прикладнику пусть мучается, пора заниматься другими делами.

в любом случае большое спасибо за внимание!

Вернуться в Работа с базами данных в C++Builder