Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2010.09.19;
Скачать: [xml.tar.bz2];

Вниз

Converter DBF to MDB   Найти похожие ветки 

 
Cannon   (2010-06-23 09:51) [0]

Появилась необходимость написать утилиту в Delphi которая будет конвертировать DBF файлы в MDB (Eccess). Подскажите, что лучше для этой цели использовать, какие компоненты для доступа к DBF и MDB ? Спасибо.


 
Сергей М. ©   (2010-06-23 09:52) [1]

ADO


 
Cannon   (2010-06-23 10:00) [2]

Создал таблицу в Access одинаковую по структуре с DBF файлов. Пробежался по DBF (While not Table.EOF) и начал сажать в таблицу Access, все записи, процесс происходит очень долго, в DBF в среднем по 500 тыс. записей. (Использовал ADO) А если открыть тот же DBF в MS Access и экспортнуть, все это происходит в считанные секунды.


 
Dennis I. Komarov ©   (2010-06-23 10:07) [3]


> Пробежался по DBF (While not Table.EOF) и...

Страсти то какие. Еще варианты будут?


 
Сергей М. ©   (2010-06-23 10:09) [4]

> если открыть тот же DBF в MS Access и экспортнуть, все это происходит в считанные секунды

Access использует Jet напрямую либо через DAO (не путать с ADO).
А что ты используешь - это известно только тебе)


 
Сергей М. ©   (2010-06-23 10:10) [5]

Ну и см.[3] - SQL-запросы на то существуют)


 
Cannon   (2010-06-23 10:16) [6]

Сейчас делаю так:

While not DBFTable.Eof do
     begin
       AccessTable.Insert;
       for f:= 0 to DBFTable.FieldCount - 1 do
       begin
         AccessTable.FieldByName(DBFTable.Fields[f].FieldName).Value := DBFTable.FieldByName(DBFTable.Fields[f].FieldName).Value;
       end;

       DBFTable.Next;
       ProgressBar1.Position := i;
       Label1.Caption := IntToStr(i);
       Refresh;
       inc(i);
     end;


А как использовать SQL, т.е открыть обе таблицы DBF и Access с помощью ADO затем использовать скрипт Insert into в ADOQuery ?


 
Сергей М. ©   (2010-06-23 10:24) [7]


> открыть обе таблицы DBF и Access


Не надо их открывать.

Используй TADOQuery с SQL-предложением INSERT INTO AccessTable SELECT * FROM DBFTable


 
Anatoly Podgoretsky ©   (2010-06-23 10:24) [8]

> Cannon  (23.06.2010 10:00:02)  [2]

Вот это и надо делать, но мы не ищем легких путей.


 
Плохиш ©   (2010-06-23 10:29) [9]


>        ProgressBar1.Position := i;
>        Label1.Caption := IntToStr(i);
>        Refresh;
>        inc(i);
>

Совершенно не интересная ветка.


 
Cannon   (2010-06-23 10:33) [10]


> Совершенно не интересная ветка.


Ну извините, забыл вырезать.


> Используй TADOQuery с SQL-предложением INSERT INTO AccessTable
> SELECT * FROM DBFTable
>


А коннект к какой из баз нужно установить ?


 
Плохиш ©   (2010-06-23 10:34) [11]

Советую нанять программиста.


 
Cannon   (2010-06-23 10:37) [12]

не надо программиста) все понял, спасибо.

ЗЫ:  Ветка для начинающих


 
Правильный$Вася   (2010-06-23 10:59) [13]

DataPump уже отменили?



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

Форум: "Начинающим";
Текущий архив: 2010.09.19;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.005 c
15-1277370419
partizan
2010-06-24 13:06
2010.09.19
Открыть веб-страницу


15-1276851347
Kerk
2010-06-18 12:55
2010.09.19
Кто-нибудь сталкивался с nosql-базами?


2-1277572345
New555
2010-06-26 21:12
2010.09.19
Использовние sndPlaySound для проигрывания нескольких файлов


2-1277721170
Scot Storch
2010-06-28 14:32
2010.09.19
проверка наличия IDs в таблице


15-1277095834
И. Павел
2010-06-21 08:50
2010.09.19
Странное переполнение





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский