Форум: "Базы";
Текущий архив: 2002.03.07;
Скачать: [xml.tar.bz2];
ВнизКак результат запроса сохранить в txt файл, чтобы потом загрузить на сервер по ftp ? Найти похожие ветки
← →
Tra (2002-02-07 18:52) [0]Как результат запроса сохранить в txt файл, чтобы потом загрузить на сервер по ftp ?
← →
kig (2002-02-07 18:59) [1]Доступ через что? К MSSQL?
Если через ADO, то у адошного рекордсета есть метод
GetString(...)
← →
Tra (2002-02-07 19:08) [2]У меня приложение работает с MSSQL сервером по локалке.
А мне нужно забросить список email_ов из таблици на удаленный сервер, а там уже посписку рассылка пойдет.
← →
kig (2002-02-07 19:16) [3]Я не про сеть спрашивал ...
Я спросил через какой механизм Вы до MSSQL добираетесь.
Спрошу конкретнее - какие компонеты используются для получения данных с MSSQL? Название их классов начинается с TADO... ?
← →
Tra (2002-02-07 19:27) [4]Нет. В основном Query
← →
kig (2002-02-07 19:51) [5]Понятно.
Если в D6 таких способов нет (у меня нет D6) - то пройтись по всем записям с начала до конца и необходимые данные забрасывать, ну например в TStringList. Затем его сохранить в файл.
← →
Tra (2002-02-07 20:04) [6]Ок, буду пробывать.Спасибо
← →
unfam (2002-02-08 03:46) [7]А почему бы не воспользоваться DTS ?
← →
Tra (2002-02-08 10:52) [8]Пардон, а что это такое?
← →
kserg@ukr.net (2002-02-08 11:02) [9]> kig - Название их классов начинается с TADO... ?
Уважаемый, ты мыслишь правильно: используй компаненты
с закладки ADO - это наболее подходящий класс для работы с MSSQL.
TADOConnection - установка связи с БД
TADOQuery - аналог TQuery для работы через BDE
← →
Romul (2002-02-08 11:11) [10]А так не покатит?
ADOQuery.SaveToFile("1.txt", pfADTG); //где pfADTG (Advanced Data Tablegram format) есть еще pfXML, но первый по умолчанию стоит.
← →
Tra (2002-02-08 13:48) [11]Попробывал...
Файл получается не того формата, мне нужен "список"
1
2
3
А тут получается 1 ... 2...3....
И потом зачем мне переделывать приложение на ADO ?
Нельзя ли, допустим сделать это стандартными средствами,
Например один из вариантов:
1. while NOT Query.eof do begin Writeln(...)end
Только пока не разобрался с синтаксисом, в частности - Что должно стоять в скобках, "c:\111\1.txt" или переменная ???
Хочу заметить, что это мое первое приложение и основные трудности вызывает именно "синтаксис" (классы, переменные, константы).
← →
Romul (2002-02-08 14:52) [12]Так ты сделай в твоей процедуре переменную типа TStringList и потом в нее закачивай данные из твоего Query. Примерно так
var
SLIst:TStringList;
begin
try
SList:=TStringList.Create;
.....
while not Query.Eof do
begin
for i:=0 to Query.DataSource.DataSet.RecordCount-1 do
SList.Strings[i]:=Query.FieldByName("Название поля в таблице").AsString+допустим пробел+еще одно поле той же строки
//так у тебя по идее заполнится структура TStringList в виде твоей таблицы
end;
SList.SaveToFile("C:\1.Txt");
finally
SList.Free;
end;
end;
Попробуй этот способ. Извини если что-то не так, сейчас просто нет возможности по быстрому это дело проверить, но принцип вроде такой.
← →
Tra (2002-02-08 18:52) [13]Спасибо за помощь:
kig
kserg@ukr.net
Romul
В итоге у меня вышло следующее:
procedure TForm1.Button4Click(Sender: TObject);
var F:TextFile;
begin
AssignFile(F, "c:\111\1.txt");
{$I-}
Rewrite(F);
{$I+}
with Query3 do
begin
Open;
while not Eof do
begin
writeln(F, Fields[0].ASString);
next;
end;
Close;
end;
CloseFile(F);
end;
end.
Query3:
select email_1
from Firms
В итоге получил тектовой файл: c:\111\1.txt
со списком почтовых адресов (email_1) из таблици Firms
С этим вроде все, теперь задача закачать этот файл с адресами
на удаленный сервер провайдера.
У кого есть идеи ?
← →
panov (2002-02-08 20:55) [14]А эти идеи в дргой ветке форума реализуются...
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.03.07;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.008 c