| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > MySQL > Связывание двух таблиц mySQL по индексу |
| Автор: DIvan 27.8.2004, 12:44 |
| Господа! Стоит тривиальная задача: связать две таблицы по индексному полю так, чтобы вместо индекса на гриде появлялся 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 27.8.2004, 16:15 | ||
|
| Автор: DIvan 27.8.2004, 18:49 | ||||||
Все правильно, но ведь я об этом писал:
Проблема в том, что в момент заполнения ComboBox` ов значениями из связанной таблицы наступают тормоза порядка секунд. Это неприемлимо. |
| Автор: Secandr 28.8.2004, 15:57 |
| тогда вопрос к языку прграмирования. |
| Автор: DIvan 28.8.2004, 18:20 | ||
2Secandr: Ну нельзя же с таким умным (и зеленым) лицом столь нетривиальные вещи говорить |
| Автор: Secandr 29.8.2004, 08:18 |
| А куда деваться, я php,perl знаю, там такие запросы работают хорошо, правда и ComboBox`ов там нет. Я думаю, лучше задать вопрос в ветке по дельфи. |
| Автор: DIvan 29.8.2004, 14:38 |
| Спасибо в любом случае! |
| Автор: Kesh 30.8.2004, 08:09 |
| А попробуй EhLib - там тоже есть LookUp - работает вроде быстро... |