Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.14;
Скачать: CL | DM;

Вниз

Я с помощью sql запроса делаю выборку из 2,3, ... n таблиц в DBGr   Найти похожие ветки 

 
Ээх   (2002-10-24 22:37) [0]

Добрый вечер. Я с помощью sql запроса делаю выборку из 2,3, ... n таблиц в DBGrid, мне нужно или сохранить эту выборку во временный файл или присвоить этой выборке один общий алиас (типа как в фоксе задается в sql запросе select через TO или INTO). Читал , что при sql запросе формируется tmp-файл, может можно его использовать, если да, то как это сделать?


 
[NIKEL] ©   (2002-10-24 23:28) [1]

наверно надо сохранить dataset?
используй TClientDataSet и сохраняй его в файл, потом сможешь подгрузить его если надо


 
VAleksey ©   (2002-10-25 06:39) [2]

TBatchMovie тебе в помощь(наверное)


 
Виталий Панасенко   (2002-10-25 08:57) [3]

Вообще-то Вы делаете выборку не DBGrid, а, я так думаю, в TQuery, который связан с TDataSource, который, в свою очередь, связан с DBGrid. Так нужно заиметь еще один компонент TTable, например, и сделать что-то типа:
Table1.CreateTable;
Query1.First;
while not Query1.Eof do
begin
Table1.Append;
Table1.FieldByName("Field1").Value := Query1.FieldByName("Field1").Value;
....
....
Table1.Post;
Query1.Next;
end;//-Query1


 
Виталий Панасенко   (2002-10-25 09:02) [4]

В догонку: а еще лучше, использовать RxLib, там есть таблицы в памяти. Результат тот же - и никаких временных таблиц на диске.


 
REP   (2002-10-25 12:21) [5]

Сохраняет любой запрос (QRep) в произвольную таблицу с именем NameTable в папку Dir (если не указана - то в QRep.DatabaseName)

Procedure CopyTable(NameTable:String;QRep:TQuery;Dir:String="");
Var
jTable:TTable;
i:Integer;
begin
jTable:=TTable.Create(Nil);

If Length(Dir)=0 Then
jTable.DatabaseName:=qRep.DatabaseName
else
jTable.DatabaseName:=Dir;

With jTable do begin
Active:=False;
FieldDefs.Clear;
TableName:=NameTable;
end;

For i:=0 To qRep.FieldDefs.Count-1 do begin
jTable.FieldDefs.Add(qRep.FieldDefs[i].Name,
qRep.FieldDefs[i].DataType,
qRep.FieldDefs[i].Size,
qRep.FieldDefs[i].Required);
end;
jTable.CreateTable;
jTable.BatchMove(qRep,batAppend);
jTable.Free;
end;

Если я правильно понял



 
MsGuns ©   (2002-10-25 14:00) [6]

>REP (25.10.02 12:21)

Круто !! Через пакетную пересылку (VAleksey © (25.10.02 06:39)
на порядок проще ! И хелп вполне хороший


 
Ээх   (2002-10-27 11:54) [7]

Спасибо Всем, воспользовался TBatchMovie.



Страницы: 1 вся ветка

Текущий архив: 2002.11.14;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.026 c
1-45829
FLAW
2002-10-29 23:30
2002.11.14
Помогите перевести прописные буквы в строковые


14-46092
copyr25
2002-10-25 21:09
2002.11.14
---|Ветка была без названия|---


8-46010
евгеша
2002-07-23 16:34
2002.11.14
Помогите пожалуйста.


3-45699
oldimax
2002-10-24 18:38
2002.11.14
Paradox 3.5 & Delphi


3-45740
Trof
2002-10-24 15:00
2002.11.14
Не обновляются данные в DBText