Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Помогите разобраться с ADO


snake-as ©   (2008-01-27 09:09:00) 

Здрасвствуйте. Я никогда не работал с БД в Delphi, вот прошу вашей помощи. Надо написать программу в ADO, все тривильно, несколько таблиц. Так вот, я разобрался, как подключиться к таблице, как вывести ее. Может разберусь даже с поиском. Я никак не могу разобраться, как связать две таблице в MsAccess я сделал две таблицы, связь между ними. А вот как сделать, чтобы при выборе записи из одной таблицы отображались соответствующие записи из другой. Если кинете ссылку на чтиво по ПРИМЕРАМ в ADO, тоже буду очень благодарен. Заранее спасибо..                                                                    Сергей


Kolan   (2008-01-27 09:33:00) [1]

> Так вот, я разобрался, как подключиться к таблице, как вывести
> ее.


Допустим у тебя есть две таблицы :
A
 ID

B
 ID
 AID


1. Кидаешь на форму два TADODataSet(например). Подключишь их сам, раз разобрался.

В первом пишешь:
SELECT * FROM A

Во втором:
SELECT * FROM B
WHERE AID = :AID


:AID — это параметр.

2. Теперь свяжи с этими запросами два грида, думаю сможешь.

3. Теперь в обработчике сщбытия OnAfterScroll (читай справку что оно означает) первого запроса пишешь примерно следующее:
procedure TForm1.ADODataSet1AfterScroll(DataSet: TDataSet);
var
 Param: TParameter;
begin
 ADODataSet2.Close;
 Param := ADODataSet2.Parameters.FindParam('AID');
 if Assigned(Param) then
   Param.Value := DataSet.FieldByName('ID').Value;
 ADODataSet2.Open
end;


То есть при изменении тек. записи в ДатаСете1 ты получаешь код текущей строки. И подставляешь эту тек. строку в качестве параметра.


Наверх

Титульная страница Поиск, карта сайта Написать письмо