HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Последовательные Sql запросы
  #1  
Старый 27.04.2008, 00:58
AleksP
Познающий
Регистрация: 02.03.2008
Сообщений: 33
Провел на форуме:
15157

Репутация: 0
По умолчанию Последовательные Sql запросы

На форме есть компонент DBGrid1. Источником данных DBGrid1 является компонент Query1 (ADOQuery1).
К источнику данных DBGrid1 применяются последовательно несколько SQL запросов.
Как сделать так, чтобы каждый последующий SQL запрос применялся к результату предыдущего?
 
Ответить с цитированием

  #2  
Старый 27.04.2008, 01:08
Dr.KoD
Познающий
Регистрация: 01.03.2008
Сообщений: 68
Провел на форуме:
140772

Репутация: 72
По умолчанию

неплохо бы взглянуть на код? какие запросы?
 
Ответить с цитированием

  #3  
Старый 27.04.2008, 01:34
presidentua
Постоянный
Регистрация: 04.11.2007
Сообщений: 331
Провел на форуме:
1724067

Репутация: 806
По умолчанию

Если это у тебя Селект запросы, то никак. Возьми создай один сложный запрос который заменит 3 простых.
 
Ответить с цитированием

  #4  
Старый 27.04.2008, 11:19
AleksP
Познающий
Регистрация: 02.03.2008
Сообщений: 33
Провел на форуме:
15157

Репутация: 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  
Старый 27.04.2008, 12:09
presidentua
Постоянный
Регистрация: 04.11.2007
Сообщений: 331
Провел на форуме:
1724067

Репутация: 806
По умолчанию

Цитата:
Сообщение от AleksP  
To presidentua: А как можно автоматически выполнить конкатенацию SQL запросов?
Напиши сюда конкретные СКЛ-запросы попробуем помочь. Сложные запросы составлятся с такимими команадми СКЛ как JOIN и UNION и некоторые другие. Автоманическую обединения запросов не плучится сдалать. В каждом конкретном случае нужен свой подход.
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.