![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
импорт в Paradox [D6, D7, Paradox]
Noox © (2004-08-14 02:31:00)Здраствуйте Мастера! У меня возникло затруднение с добавлением в .db Paradox инфы из другой такой же базы. Как мне лучше реализовать процесс переноса из базы в базу на Delphi. И, если возможно, опишите процесс переноса базы в txt или xml и обратно. Заранее благодарю!
Noox (2004-08-16 03:45:00) [1]И опишите, пжалуста, самый простой метод переноса информации напрямую из базы в базу, с заменой существующих данных.
Noox (2004-08-16 00:28:00) [2]sniknik ©, А нельзя ли поточнее про ваш метод? Я немного не понял...
Ted (2004-08-15 17:56:00) [3]>sniknik ©
Немного это круто сказано )))
sniknik (2004-08-15 14:19:00) [4]а разве у меня не процесс? только немного короче.
Ted (2004-08-15 11:08:00) [5]>sniknik ©
вопрос был
если возможно, опишите процесс переноса базы в txt )))
sniknik (2004-08-15 10:46:00) [6]> У меня загрузка из файла в БД сделана так... чуть изменишь будет выгрузка в файл )))
а у меня так
INSERT INTO rules SELECT * FROM [rules#txt] IN "D:\" "Text;" WHERE IdTrans > (SELECT Max(IdTrans ) FROM rules)
;о)
выгрузка аналогично.
p.s. учите sql! (база access, для парадокса зачем вообще формат менять? так в парадоксовском и обменивайся)
Ted (2004-08-15 06:57:00) [7]У меня загрузка из файла в БД сделана так... чуть изменишь будет выгрузка в файл )))
procedure TForm1.Button6Click(Sender: TObject);
Var
F : TextFile;
S,
s1 : String;
fa : Integer;
k : Integer;
ok : Integer;
na : Integer;
adr : Integer;
usl : Integer;
begin
AssignFile(F, 'c:\1.txt')
Reset(F);
repeat
Readln(F, S);
k := 0;
fa := 0;
ok := 0;
na := 0;
adr := 0;
usl := 0;
repeat
if (Pos('?', S) 0) and (S '') then
begin
if fa=6 then
begin
CanPost := true;
Table1.Post;
CanPost := false;
end;
S1 := Copy(S, 0, Pos('?', S) - 1);
s1:=DosToWin(s1);
if fa=6 then fa:=0;
if k=7 then k:=1;
if ok=8 then ok:=2;
if na=9 then na:=3;
if adr=10 then adr:=4;
if usl=11 then usl:=5;
if fa=0 then Table1.Insert;
if fa=0 then Table1.FieldByName('Fam_dir').AsString := s1;
if k=1 then Table1.FieldByName('Tel_predpr').AsString := s1;
if ok=2 then Table1.FieldByName('Okrug').AsString := s1;
if na=3 then Table1.FieldByName('Name').AsString := s1;
if adr=4 then Table1.FieldByName('Street').AsString := s1;
if usl=5 then Table1.FieldByName('Dela').AsString := s1;
if usl=5 then Table1.FieldByName('Istok').AsString := 'Ìåðèÿ';
S := Copy(S, Pos('?', S) + 1, Length(S) - Pos('?', S));
k := k + 1;
ok := ok + 1;
na := na + 1;
fa:=fa+1;
adr:=adr+1;
usl:=usl+1;
end
else
begin
if S '' then
begin
if fa=7 then
begin
CanPost := true;
Table1.Post;
CanPost := false;
end;
s1:=DosToWin(s);
if fa=6 then fa:=0;
if k=7 then k:=1;
if ok=8 then ok:=2;
if na=9 then na:=3;
if adr=10 then adr:=4;
if usl=11 then usl:=5;
if fa=0 then Table1.Insert;
if fa=0 then Table1.FieldByName('Fam_dir').AsString := s1;
if k=1 then Table1.FieldByName('Tel_predpr').AsString := s1;
if ok=2 then Table1.FieldByName('Okrug').AsString := s1;
if na=3 then Table1.FieldByName('Name').AsString := s1;
if adr=4 then Table1.FieldByName('Street').AsString := s1;
if usl=5 then Table1.FieldByName('Dela').AsString := s1;
if usl=5 then Table1.FieldByName('Istok').AsString := 'Ìåðèÿ';
S := Copy(S, Pos('?', S) + 1, Length(S) - Pos('?', S));
k := k + 1;
ok := ok + 1;
na := na + 1;
fa:=fa+1;
adr:=adr+1;
usl:=usl+1;
S := '';
end;
end;
Until S = '';
Until EOF(f);
CloseFile(F);
refCB1()
end;
Noox (2004-08-15 01:12:00) [8]Я имел ввиду выгрузка базы Paradox в txt или xml. А потом загрузка в базу из файла обратно в Paradox. Можно ли это реализовать? Просто базы находяться в разных местах. И раз в месяц надо из одной базы выгрузить инфу и добавить в другую. Мне надо это как нить попроще это сделать для персонала. Data Pump они просто не осилят. Посоветуйте как поступить...
Desdechado (2004-08-14 20:33:00) [9]не понял, как это парадокс-база на xml ?
если просто 2 БД парадокса, то создаешь 2 экземпляра TDatabase и через них из одной читаешь, в другую пишешь.