![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как лучше сохранить выборку из Adoquery в файл? [D6, 2000]
pathfinder © (2005-11-28 15:26:00)Подскажите пожалуйста как лучше сохранить выборку из Adoquery в файл? В идеале в виде таблицы в вордовский файл, но можно и в текстовый. Заранее спасибо.
pathfinder (2005-11-28 17:31:00) [1]
> PeaK ©
> sniknik ©
Спасибо. Буду тестить оба способа.
PeaK (2005-11-28 17:21:00) [2]Чем мой способ-то не устраивает? Семь строчек кода и вся выборка наша... :-)
sniknik (2005-11-28 17:21:00) [3]легко загрузить в Excel
Excel:= CreateOleObject('Excel.Application');
Excel.SheetsInNewWorkbook:= 1;
WorkBook:= Excel.WorkBooks.Add;
Sheet:= WorkBook.WorkSheets[1];
Sheet.Range['a3'].CopyFromRecordset(DatSet.Recordset);
в ворде возможно есть чтото аналогичное
pathfinder (2005-11-28 17:07:00) [4]Вопрос в том как сделать это программно..
Ega23 (2005-11-28 15:53:00) [5]
> в XML AdoQuery тоже может..
Не знал. Тогда это ещё проще.
> а как потом из XML доковский или текстовый сделать?
Это сродни вопросу: "А как из HTML доковский или текстовый файл сделать"
pathfinder (2005-11-28 15:49:00) [6]
> Ega23 ©
в XML AdoQuery тоже может..а как потом из XML доковский или текстовый сделать?
Ega23 (2005-11-28 15:41:00) [7]Первое, что пришло в голову:
Связка ADOQuery -> DataSetProvider -> ClientDataSet.
ClientDataSet, в свою очередь, умеет в XML сохранять.
PeaK (2005-11-28 15:40:00) [8]Можно пройти по всей выборке примерно так:
ADOQuery1.Close ;
ADOQuery1.SQL.Text := 'Select * from mytable where (a4 = 28) order by a1' ;
ADOQuery1.Open ;
ADOQuery1.First ;
while not ADOQuery1.Eof do
begin
// ADOQuery1.Fields[0].AsString - содержит информацию
// из первого столбца таблицы mytable
// его можно записать в файл, если это число, а файл открыт для записи
Writeln(TextFile, ADOQuery1.Fields[0].AsString , ADOQuery1.Fields[1].AsString ) ;
// запись в открытый TextFile полей за номером 1 и 2
ADOQuery1.Next ;
// последовательно переходим по всей
// выборке, осортированной по параметру a1
end ;