Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Связывание двух таблиц mySQL по индексу 
:(
    Опции темы
DIvan
Дата 27.8.2004, 12:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 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 поля вообще нет возможности использовать, если их в таблице больше одного?!

Большая просьба, помогите разобраться!
PM MAIL   Вверх
Secandr
Дата 27.8.2004, 16:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Связист
****


Профиль
Группа: Экс. модератор
Сообщений: 4043
Регистрация: 3.8.2003
Где: Russia, Volgograd

Репутация: 6
Всего: 39



SQL
SELECT FROM table_a LEFT JOIN table_b ON table_a.id=table_b.id



--------------------
Мышки плакали, кололись, но продолжали жрать кактусы (с) cisco
PM ICQ AOL   Вверх
DIvan
Дата 27.8.2004, 18:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 27.8.2004

Репутация: нет
Всего: нет



Цитата(Secandr @ 27.8.2004, 16:15)
SQL
SELECT FROM table_a LEFT JOIN table_b ON table_a.id=table_b.id

Все правильно, но ведь я об этом писал:
Цитата
Последняя мысль - использовать SQL запросы. Таблица формируется мгновенно, но мен нужна еще возможность редактирования, в т.ч. подстановка из связанных словарей. Тормоза наступили (а как же без них? )) в момент заполнения списка ComboBox, в который я превратил индексное поле таблицы.


Проблема в том, что в момент заполнения ComboBox` ов значениями из связанной таблицы наступают тормоза порядка секунд. Это неприемлимо.
PM MAIL   Вверх
Secandr
Дата 28.8.2004, 15:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Связист
****


Профиль
Группа: Экс. модератор
Сообщений: 4043
Регистрация: 3.8.2003
Где: Russia, Volgograd

Репутация: 6
Всего: 39



тогда вопрос к языку прграмирования.


--------------------
Мышки плакали, кололись, но продолжали жрать кактусы (с) cisco
PM ICQ AOL   Вверх
DIvan
Дата 28.8.2004, 18:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 27.8.2004

Репутация: нет
Всего: нет



Цитата(Secandr @ 28.8.2004, 15:57)
тогда вопрос к языку прграмирования.

2Secandr: Ну нельзя же с таким умным (и зеленым) лицом столь нетривиальные вещи говорить biggrin.gif
PM MAIL   Вверх
Secandr
Дата 29.8.2004, 08:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Связист
****


Профиль
Группа: Экс. модератор
Сообщений: 4043
Регистрация: 3.8.2003
Где: Russia, Volgograd

Репутация: 6
Всего: 39



А куда деваться, я php,perl знаю, там такие запросы работают хорошо, правда и ComboBox`ов там нет.

Я думаю, лучше задать вопрос в ветке по дельфи.


--------------------
Мышки плакали, кололись, но продолжали жрать кактусы (с) cisco
PM ICQ AOL   Вверх
DIvan
Дата 29.8.2004, 14:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 27.8.2004

Репутация: нет
Всего: нет



Спасибо в любом случае!
PM MAIL   Вверх
Kesh
Дата 30.8.2004, 08:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Эксперт
Сообщений: 2488
Регистрация: 31.7.2002
Где: Германия, Saarbrü cken

Репутация: 15
Всего: 54



А попробуй EhLib - там тоже есть LookUp - работает вроде быстро...


--------------------
user posted image
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MySQL | Следующая тема »


 




[ Время генерации скрипта: 0.0449 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.