![]() |
|
||||
|
| Легко - MS Access проделываетэту операцию на раз. Вот за корректность всех свойств полей не ручаюсь, но если открыть парадоксовский файл в Экцессе, а потом Файл>Экспорт, то получившееся обратно в Экцессе же читается. Учитывая, что Парадокс - тот же предшественник Майкрософтовского Экцесса, а ДБФ вообще прост как три копейки, глюков быть не должно. |
|
Постмотри http://softsearch.ru/programs/13-190-database-converter-download.shtml |
|
Хитромудрая моя жена предложила следующий вариант на Делфях: Простейший вариант при известной структуре файлов db и dbf: 1. В TQuery (TTable) расположить поля БД по типу 2. Объявить массивы по типам полей 3. Сканировать базу в массив построчно 4. Добавить записи в dbf или db из массива Пример public { Public declarations } mi,mis:array [1..19] of integer; mf,mfs:array [1..35] of real; ms,mss:array [1..53] of string; md,mds:array [1..55] of tdatetime; mb,mbs:boolean; end; for i:=1 to 18 do mis[i]:=qr05.Fields[i].asinteger; for i:=19 to 34 do mfs[i]:=qr05.Fields[i].asfloat; for i:=35 to 52 do mss[i]:=qr05.Fields[i].asstring; mds[53]:=qr05datap.Value; mds[54]:=qr05datau.Value; mbs:=qr05prd.Value; |
|
Вот холера, движок форума квадратные скобки за тэги принял, ладно, попробую движок обмануть: Простейший вариант при известной структуре файлов db и dbf: 1. В TQuery (TTable) расположить поля БД по типу 2. Объявить массивы по типам полей 3. Сканировать базу в массив построчно 4. Добавить записи в dbf или db из массива Пример [code]public { Public declarations } mi,mis:array [1..19] of integer; mf,mfs:array [1..35] of real; ms,mss:array [1..53] of string; md,mds:array [1..55] of tdatetime; mb,mbs:boolean; end; for i:=1 to 18 do mis[i]:=qr05.Fields[i].asinteger; for i:=19 to 34 do mfs[i]:=qr05.Fields[i].asfloat; for i:=35 to 52 do mss[i]:=qr05.Fields[i].asstring; mds[53]:=qr05datap.Value; mds[54]:=qr05datau.Value; mbs:=qr05prd.Value;[/code] |
|
Еще раз, квадратные скобки заменены на круглые: public { Public declarations } mi,mis:array (1..19) of integer; mf,mfs:array (1..35) of real; ms,mss:array (1..53) of string; md,mds:array (1..55) of tdatetime; mb,mbs:boolean; end; for i:=1 to 18 do mis(i):=qr05.Fields(i).asinteger; for i:=19 to 34 do mfs(i):=qr05.Fields(i).asfloat; for i:=35 to 52 do mss(i):=qr05.Fields(i).asstring; mds(53):=qr05datap.Value; mds(54):=qr05datau.Value; mbs:=qr05prd.Value; |
|
> to grb > Еще раз, квадратные скобки заменены на круглые: > public > { Public declarations } > mi,mis:array (1..19) of integer; > mf,mfs:array (1..35) of real; > ms,mss:array (1..53) of string; > md,mds:array (1..55) of tdatetime; > mb,mbs:boolean; > end; > > for i:=1 to 18 do mis(i):=qr05.Fields(i).asinteger; > for i:=19 to 34 do mfs(i):=qr05.Fields(i).asfloat; > for i:=35 to 52 do mss(i):=qr05.Fields(i).asstring; > mds(53):=qr05datap.Value; > mds(54):=qr05datau.Value; > mbs:=qr05prd.Value; ---------------------------------------------------- пасиб... мы ужу тоже решили сами делать, но мыслю твою поняли |
|
2002 - 2011 © Bigler.ru Перепечатка материалов в СМИ разрешена с ссылкой на источник. Разработка, поддержка VGroup.ru Кадет Биглер: cadet@bigler.ru Вебмастер: webmaster@bigler.ru |