![]() |
|
Модераторы: skyboy |
![]()
|
|
| DIvan |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 27.8.2004 Репутация: нет Всего: нет |
Господа!
Стоит тривиальная задача: связать две таблицы по индексному полю так, чтобы вместо индекса на гриде появлялся ComboBox со значениями из второй таблицы. Использую mySQL server и Delphi 7 с установленными компонентами DAC for mySQL + Express QuantumGrid 4. Первая мысль была связать таблицы по lookup`у, используя обычный DBGrid и FieldsEditor таблицы БД. Все работает, но сильно тормозит в момент загрузки формы. Вторая мысль - использовать свойство QuantumGrid , позволяющее придать любому столбцу вид того же LookupComboBox. Все работает, но тормозит при попытках сортировки по lookup-полям. Чем полей больше, тем тормоза сильней. Всего полей 12 + 5 lookup. Была попытка также связать таблицы, пользуясь первым методом, но применяя для отображения QuantumGrid. Теперь тормоза на входе в форму (около 5 сек.), зато сортировка и вообще работа с таблицей стала работать нормально. Последняя мысль - использовать SQL запросы. Таблица формируется мгновенно, но мен нужна еще возможность редактирования, в т.ч. подстановка из связанных словарей. Тормоза наступили (а как же без них? )) в момент заполнения списка ComboBox, в который я превратил индексное поле таблицы. Так что же это получается? Или я где-то не прав (на что и надеюсь), или lookup поля вообще нет возможности использовать, если их в таблице больше одного?! Большая просьба, помогите разобраться! |
|||
|
||||
| Secandr |
|
|||
|
Связист ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4043 Регистрация: 3.8.2003 Где: Russia, Volgograd Репутация: 6 Всего: 39 |
|
|||
|
||||
| DIvan |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 27.8.2004 Репутация: нет Всего: нет |
Все правильно, но ведь я об этом писал:
Проблема в том, что в момент заполнения ComboBox` ов значениями из связанной таблицы наступают тормоза порядка секунд. Это неприемлимо. |
||||||
|
|||||||
| Secandr |
|
|||
|
Связист ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4043 Регистрация: 3.8.2003 Где: Russia, Volgograd Репутация: 6 Всего: 39 |
тогда вопрос к языку прграмирования.
|
|||
|
||||
| DIvan |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 27.8.2004 Репутация: нет Всего: нет |
2Secandr: Ну нельзя же с таким умным (и зеленым) лицом столь нетривиальные вещи говорить |
|||
|
||||
| Secandr |
|
|||
|
Связист ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4043 Регистрация: 3.8.2003 Где: Russia, Volgograd Репутация: 6 Всего: 39 |
А куда деваться, я php,perl знаю, там такие запросы работают хорошо, правда и ComboBox`ов там нет.
Я думаю, лучше задать вопрос в ветке по дельфи. |
|||
|
||||
| DIvan |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 27.8.2004 Репутация: нет Всего: нет |
Спасибо в любом случае!
|
|||
|
||||
| Kesh |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Эксперт Сообщений: 2488 Регистрация: 31.7.2002 Где: Германия, Saarbrü cken Репутация: 15 Всего: 54 |
А попробуй EhLib - там тоже есть LookUp - работает вроде быстро...
-------------------- ![]() |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MySQL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |