![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Вобщем сделал я простенький пример:
Первая выборка по производителю, вторая выборка по типу, третяя выборка по цвету. Есть 3 производителя ручек. Каждый производит 2 типа (гелевые и капилярные). В каждом типе производится по 3 цвета. Итого в БД получается 18 ручек. Что происходит когда я запускаю выборку: Допустим выбираю производителя. Начинаю выбирать тип ручки, и у меня как бы производитель не учитывается, показывает все ручки одного типа, без учета производителя, с цветом тоже самое - без учета производителя и типа. Подскажите какой момент я недоработал? PHP код:
Последний раз редактировалось device™, 24.11.2009 в 16:37. |
|
#2
|
||||
|
||||
|
Для реализации ваших связаных справочников почитайте про организацию связи между таблицами Master - Detail.
Если очень сжато то так: В дельфи для таблиц используется специальное свойство в TAdoTable,TTable называется MasterSource. Код:
Detail.MasterSource := DatasourceMasterSource; Detail.MasterFields := 'Key'; Для запросов используется несколько другая техника. В теле запроса упоминается имя поля связи Код:
select * from Detail where MasterKey=:Key |
|
#3
|
|||
|
|||
|
Цитата:
Вот моя аська 37-88-64-000 если есть возможность можно по аське, просто уже неделю мучаюсь, никак не получается ![]() |
|
#4
|
|||
|
|||
|
Мне кажеться что вот здесь недоработано:
PHP код:
ПС. У меня тут используется DBGrid... Последний раз редактировалось device™, 24.11.2009 в 16:43. |
|
#5
|
|||
|
|||
|
PHP код:
|
|
#6
|
|||
|
|||
|
использую FB и хотелось бы более развертутого ответа по реализации Master Detail.
- как правильно связать таблицы, с чего начинать ? - для работы с БД FB я использую IBExpert, как там создать и что для связи таблиц ? сделал все как описано, но во втором гриде пустые поля от таблицы =/ в чем может быть причина ?? Мой вопрос снят с повестки, все заработало. Моя невнимательность была ошибкой. Страдалец большое спасибо за твои публичные советы +_+ Последний раз редактировалось Second, 27.12.2010 в 17:31. |