Последовательные Sql запросы

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by AleksP, 27 Apr 2008.

  1. AleksP

    AleksP New Member

    Joined:
    2 Mar 2008
    Messages:
    33
    Likes Received:
    0
    Reputations:
    0
    На форме есть компонент DBGrid1. Источником данных DBGrid1 является компонент Query1 (ADOQuery1).
    К источнику данных DBGrid1 применяются последовательно несколько SQL запросов.
    Как сделать так, чтобы каждый последующий SQL запрос применялся к результату предыдущего?
     
  2. Dr.KoD

    Dr.KoD Elder - Старейшина

    Joined:
    1 Mar 2008
    Messages:
    68
    Likes Received:
    22
    Reputations:
    1
    неплохо бы взглянуть на код? какие запросы?
     
  3. presidentua

    presidentua милиционер Античата

    Joined:
    4 Nov 2007
    Messages:
    305
    Likes Received:
    236
    Reputations:
    15
    Если это у тебя Селект запросы, то никак. Возьми создай один сложный запрос который заменит 3 простых.
     
  4. AleksP

    AleksP New Member

    Joined:
    2 Mar 2008
    Messages:
    33
    Likes Received:
    0
    Reputations:
    0
    К источнику данных DBGrid1 последовательно применяются несколько SQL запросов следующего вида:

    if (DBGrid1->DataSource->DataSet == DataModule2->ADOQuery1)
    {
    DataModule2->ADOQuery1->Active = false;
    DataModule2->ADOQuery1->SQL->Clear();
    DataModule2->ADOQuery1->SQL->Add("SELECT * FROM TableName WHERE ... ORDER BY FieldName");
    DataModule2->ADOQuery1->Open();
    }

    Команда SQL->Clear() обнуляет результат предыдущего запроса. Хотелось бы после каждого запроса сделать что-то вроде (TQuery *)DBGrid1->DataSource->DataSet и работать уже с этой конструкцией, если это возможно.

    To presidentua: А как можно автоматически выполнить конкатенацию SQL запросов?
     
  5. presidentua

    presidentua милиционер Античата

    Joined:
    4 Nov 2007
    Messages:
    305
    Likes Received:
    236
    Reputations:
    15
    Напиши сюда конкретные СКЛ-запросы попробуем помочь. Сложные запросы составлятся с такимими команадми СКЛ как JOIN и UNION и некоторые другие. Автоманическую обединения запросов не плучится сдалать. В каждом конкретном случае нужен свой подход.