Форум: "Базы";
Текущий архив: 2003.09.29;
Скачать: [xml.tar.bz2];
Вниз
TADOQuery Найти похожие ветки
← →
АлеКс (2003-09-09 05:43) [0]Господа! Научите плиз.
Выполняется запрос в TADOQuery, как по этим данным сделать еще один запрос.
Не хочется перебирать каждую запись в цикле.
← →
АлеКс (2003-09-09 07:11) [1]А всетаки!
← →
Hooch (2003-09-09 07:23) [2]смотря какой запрос :-) можно Filter попробовать
← →
АлеКс (2003-09-09 07:30) [3]Да нет Filter совсем не то.
После выполнения ADOQuery образуется RecordSet. С ним можно работать как с обыкновенной таблицей.
Вот этот набор данных по нему хотелось бы построить запрос и выполнить.
← →
Hooch (2003-09-09 07:31) [4]SELECT из RecordSet"а ? :-)
← →
АлеКс (2003-09-09 07:37) [5]Вот именно (хорошо когда тебя понимают).
← →
Hooch (2003-09-09 07:42) [6]не получится
← →
АлеКс (2003-09-09 07:46) [7]Может есть альтернатива. Или придется сохранять в файл и потом уже с ним работать.
← →
Hooch (2003-09-09 07:54) [8]ВЫ бы пример привели если можно
← →
АлеКс (2003-09-09 08:01) [9]Ну помоему тут все ясно.
В ADOQuery в запросе можно задавать параметры.
Есть тип параметра ftDataSet - DataSet field
может както через него можно вставить
SELECT * FROM :Param;
← →
Radionov Alexey (2003-09-09 08:09) [10]>АлеКс (09.09.03 05:43)
Запрос по запросу?
Не знаю, поддерживается ли это у тебя, но я в таких случаях использую конструкцию:
select <fields> where <conditions> from (select <fields> where <conditions> from <tables>)
Либо в where добавить нужные условия :)
← →
Hooch (2003-09-09 08:12) [11]:-) так не получится, ftDataSet - это тип поля набора данных.
В качестве поля в набор данных можно включить другой набор данных. Тип параметров и тип полей это одно и то же множество, но если в параметрах есть тип ftDataSet то это ещё ни о чем не говорит. Выборку из результата запроса вроди как можно было через BDE сделать
← →
АлеКс (2003-09-09 08:18) [12]Вот например ребята с Visual FoxPro работают так там в результате запроса создается временная таблица в памяти по которой можно опять делать запрос.
А вариант Radionov Alexey © известный но врезультате первого запроса у меня получится 200.000 записей и по этим записям придется делать около 7.000 запросов. Поэтому делать как вы предложили мне не сруки.
← →
Hooch (2003-09-09 08:27) [13]временная таблица на сервере и RecordSet это немного разные веши.
← →
Radionov Alexey (2003-09-09 08:29) [14]>АлеКс (09.09.03 08:18)
Если в качестве сервера используется SQL-сервер, то можно попробовать использовать представления (view) и работать с ними.
← →
АлеКс (2003-09-09 08:33) [15]Но всетаки это наборы данных
ADODataSet1.RecordSet
Может есть компоненты (совсем необязательно ADO) в которые можно передать RecordSet и строить по нему запрос.
← →
Radionov Alexey (2003-09-09 08:34) [16]>АлеКс (09.09.03 08:18)
Еще, как вариант:
Использовать простой TQuery, назначив ему соответствующий DataSource.
← →
АлеКс (2003-09-09 08:41) [17]Это компонента BDE? нехотелось бы его за собой таскать.
← →
Hooch (2003-09-09 08:48) [18]переходи на MS SQL SERVER, там и в запросе селект из селекта можно делать, и RecordSet пихать во временную таблицу и т.д. и т.п. (не на правах рекламы !)
:-))
← →
АлеКс (2003-09-09 08:51) [19]Спасибо большое но мне пока приходится с Access раьотать (судьба).
Поэтому такие вопросы и возникабт.
А как замечательно было бы если можно вставить в качестве параметра ссылку на RecordSet ведь можно ссылаться на внешнюю базу данных в операторе IN.
← →
АлеКс (2003-09-09 09:01) [20]А может попробовать через ClentDataSet?
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.09.29;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.069 c