![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как в Дельфи сохранить результаты Query в dBase4 файл(*.dbf)?? [D6, MSSQL, dBase, FoxPro]
Guz © (2004-01-14 19:07:00)
на Mssql есть бд , из неё я Query делаю кое-какую выборку...
результаты этой выборки нужно сохранить в файл Dbase4, как бы это сотворить?)
Кщд (2004-01-15 05:41:00) [1]
Slym © (15.01.04 05:22) [4]
а как быть, если не используешь Дельфи? :)
программно: одним Query достал данные, другим вставил
если IBX, то BatchOutput/BatchInput
Slym (2004-01-15 05:22:00) [2]
А как быть если не используешь BDE?
Guz (2004-01-14 22:48:00) [3]
Вот пара процедур которые мне дали на другом форуме(может кому пригодитца, все работает отлично!):
procedure batAppendRecords(TableFrom, TableTo : TTable);
var
bMove : TBatchMove;
begin
bMove:= TBatchMove.Create({TableTo.Owner}NIL);
with bMove do try
AbortOnKeyViol:= False;
AbortOnProblem:= False;
Source:= TableFrom;
Destination:= TableTo;
Mode:= batAppend;
if TableTo.Active then TableTo.Refresh;
Execute;
if TableTo.Active then TableTo.FlushBuffers;
if TableTo.Active then TableTo.Refresh;
finally
Free;
end;
end;
procedure SaveSQL(vSQL : TQuery; DstDatabaseName, DstTableName : string);
var
vTable : TTable;
begin
vTable:= TTable.Create(NIL);
try
vTable.DatabaseName:= DstDatabaseName;
vTable.TableName:= DstTableName;
vTable.FieldDefs.Assign(vSQL.FieldDefs);
vTable.CreateTable;
vTable.Open;
batAppendRecords(TTable(vSQL), vTable);
vTable.Close;
finally
vTable.Free;
end;
end;
YuRock (2004-01-14 19:21:00) [4]
Можно попробовать зарегистрировать базу с файлом DBase4, а в Query.SQL.Text написать что-то типа
"INSERT INTO ":DBFBASE:Table1" SELECT ":SQLBASE:Table1""
DBFBASE и SQLBASE - БДЕшные алиасы баз. Но только ни в коем случае не надо указывать Query, к какой базе она пренадлежит, иначе работать не будет.
alex_*** (2004-01-14 19:12:00) [5]
Компоненты на торри