Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Экспорт данных из Access в текстовый файл

43K
13 ноября 2008 года
Trans-Coder
5 / / 04.11.2008
Проблема в слишком медленной работе программы
Пишу на Delphi+EhLib+Jet
Есть оптимальный способ?
6
15 ноября 2008 года
George
4.1K / / 05.01.2007
медленная работа программы из-за чего? Каким образом экспортируете? Код дали бы чтоли...
43K
15 ноября 2008 года
Trans-Coder
5 / / 04.11.2008
Писал велосипед:
==============================
For I:= 1 to RCount do
For J:= 1 to FCount do
buf:=buf+';'+AdoTable1.Fields[J].Text;
...
Writeln(ToFile,buf); Думаю здесь узкое место, слишком много обращений к жесктому диску
==============================
Перепробовал множество вариантов
Остановился на этом:
ADOConnection1.ConnectionString:=
'Provider=Microsoft.Jet.OLEDB.4.0;'+
'Data Source='+Path+';Persist Security Info=False';

ADOComm.CommandText:= 'Select * INTO ' + '[' +
ExtractFileName(FileName) + ']' +
' IN ' + '"' + ExtractFilePath(FileName) + '"' + '[' + IsamFormat +
';]' + ' From ' + TableName;
ADOComm.CommandText := ADOComm.CommandText + ' order by ' + Sort+' DESC';
ADOComm.Execute;
Но есть недостаток, не возможности показать прогресс экспорта
6
15 ноября 2008 года
George
4.1K / / 05.01.2007
ну видимо сама по себе задача довольно ёмкая в плане времени и ничо особо не сделаешь. Об этом можешь предупредить пользователя и особо не изгаляться. имхо

P.S. оформляйте код пожалуста тэгами [ code ] [ /code ]
43K
15 ноября 2008 года
Trans-Coder
5 / / 04.11.2008
Думаю увеличить размер буфера
За раз скажем по 100 записей на
диск в файл сбрасывать...
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог