Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > Работа с базой данных. Поиск


Автор: nyutka0104 1.5.2014, 17:21
Здравствуйте! Пишу на делфи7.
Такая проблема, есть главная таблица в БД, поля: Заказчик, дата заказа и там еще несколько, но это не суть. 
Есть вторая таблица - Заказчики, в ней содержится информация о заказчиках.

так вот в главной таблице в поле ЗАКАЗЧИК отображается идентификатор заказчика из второй таблицы "Заказчики". Надеюсь понятно описала. 
То есть это по правилам нормализации базы данных.

в DBGrid настроила чтобы вместо цифр в поле заказчик отображалось 3 поля: Фамилия имя и отчество.

Так вот, мне нужно сделать поиск по первой таблице по закащчикам.
То есть пользователь вводит фамилию заказчика и он должен вывести все заказы соответсвующие этой фамилии.

Но у меня получется только если вводить цифрами. Блин, нужна в общем помощь(( Если непонятно объяснила сообщите.(( Мучаюсь уже неделю.

Использую Adoconnection, ADOQUery, DataSoutce, DBGrid



Автор: Akella 1.5.2014, 18:20
в верхней таблице нужно использовать lookup поле

ил в запросе нужно использовать left join для верхней таблицы

Добавлено @ 18:22
Что-то вроде
Код

select заказы.поле1, заказы.поле2, заказчики.ИМЯ
  from заказы
left join заказчики on заказы.код_заказчика = заказчики.код

Автор: nyutka0104 2.5.2014, 18:09
Цитата(Akella @ 1.5.2014,  18:20)
в верхней таблице нужно использовать lookup поле

ил в запросе нужно использовать left join для верхней таблицы

Добавлено @ 18:22
Что-то вроде
Код

select заказы.поле1, заказы.поле2, заказчики.ИМЯ
  from заказы
left join заказчики on заказы.код_заказчика = заказчики.код

Akella, спасибор большое!))) Очень помогли) всё работает)) 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)