Конференция "Основная" » Помогите разобраться с ADO
 
  • snake-as © (27.01.08 09:09) [0]
    Здрасвствуйте. Я никогда не работал с БД в Delphi, вот прошу вашей помощи. Надо написать программу в ADO, все тривильно, несколько таблиц. Так вот, я разобрался, как подключиться к таблице, как вывести ее. Может разберусь даже с поиском. Я никак не могу разобраться, как связать две таблице в MsAccess я сделал две таблицы, связь между ними. А вот как сделать, чтобы при выборе записи из одной таблицы отображались соответствующие записи из другой. Если кинете ссылку на чтиво по ПРИМЕРАМ в ADO, тоже буду очень благодарен. Заранее спасибо..                                                                    Сергей
  • Kolan © (27.01.08 09:33) [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 ты получаешь код текущей строки. И подставляешь эту тек. строку в качестве параметра.
 
Конференция "Основная" » Помогите разобраться с ADO
Есть новые Нет новых   [134482   +34][b:0][p:0.001]