|
Использование утилиты dbload
|
|||
---|---|---|---|
#18+
Доброго времени суток! Мне необходимо в программе, написанной на Delphi, загрузить данные из файлика в таблицу Informix. При закачке данных в цикле уходит много времени, так как обрабатывается более 15 000 записей. Вроде как для этих целей можно использовать утилиту dbload, вот только не знаю, как ею пользоваться. Подскажите, пожалуйста, как пользоваться утилитой dbload? Заранее большое спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2010, 16:20 |
|
Использование утилиты dbload
|
|||
---|---|---|---|
#18+
код в студию. Кстати много времени это сколько? Я программой на делфи 200 тыс за 1,5 мин. грузил в информикс. Это быстро или долго? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2010, 16:30 |
|
Использование утилиты dbload
|
|||
---|---|---|---|
#18+
код загрузки в цикле ... Dbf1.First; While not Dbf1.Eof do begin quLoadData.SQL.Clear; quLoadData.SQL.Text:= 'insert into provision_new_serv_main (поле1, поле2, поле3, поле4, поле5, поле6, поле7)' +' values (' +Dbf1.FieldByName('поле1').AsString+',' +''''+Dbf1.FieldByName('поле2').AsString+''',' +''''+Dbf1.FieldByName('поле3').AsString+''',' +''''+Dbf1.FieldByName('поле4').AsString+''',' +''''+Dbf1.FieldByName('поле6').AsString+''',' +''''+Dbf1.FieldByName('поле7').AsString+'''' +')'; quLoadData.ExecSQL; Dbf1.Next; end; ... загрузка идет приблизительно 10-15 минут ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2010, 16:46 |
|
Использование утилиты dbload
|
|||
---|---|---|---|
#18+
самая очевидная ошибка, непрепаренный запрос. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2010, 16:54 |
|
Использование утилиты dbload
|
|||
---|---|---|---|
#18+
кстати если закоментировать execsql вы узнаете сколько времени из 10 мин. уходит на чтение dbf ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2010, 16:55 |
|
Использование утилиты dbload
|
|||
---|---|---|---|
#18+
Спасибо за совет. Теперь загрузка идет быстрее. 17 335 записей загружаются около 3-х минут, при этом на чтение dbf файла уходит 1 секунда :) Хотелось бы, чтобы данные загружались еще быстрее. Преобразование данных dbf файла в unl файл происходит в программе также за 1 с. код ... Var Buffer: string; ListOut: TStringList; ... While not Dbf1.Eof do begin Buffer:= Dbf1.FieldByName('поле1').AsString + '|' + Dbf1.FieldByName('поле2').AsString + '|' + Dbf1.FieldByName('поле3').AsString + '|' + Dbf1.FieldByName('поле4').AsString + '|' + Dbf1.FieldByName('поле5').AsString + '|' + Dbf1.FieldByName('поле6').AsString + '|'; ListOut.Add(Buffer); Dbf1.Next; end; ListOut.SaveToFile(UnlPath + 'file.unl'); и я думаю, что если есть возможность использовать утилиту dbload, то при ее использовании данные из файла формата unl в таблицу Informix будут загружаться быстрее :) (уверенности в этом нет, но попробовать можно было бы) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2010, 17:52 |
|
Использование утилиты dbload
|
|||
---|---|---|---|
#18+
LyudikПодскажите, пожалуйста, как пользоваться утилитой dbload? А что мешает посмотреть в доку по вашей версии ? Есть конкретные вопросы или просто ничего не читали ? http://publib.boulder.ibm.com/infocenter/idshelp/v115/index.jsp - это информация по 11.5 В поле поиска задаете dbload и получите массу ссылок на нужные разделы, от синтаксиса до советов по применению. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2010, 21:40 |
|
Использование утилиты dbload
|
|||
---|---|---|---|
#18+
утилитой dbload не удастся воспользоваться скорее всего, она только без пароля умеет ходить берите dbaccess и команды connect и load ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2010, 11:49 |
|
Использование утилиты dbload
|
|||
---|---|---|---|
#18+
Lyudik Хотелось бы, чтобы данные загружались еще быстрее. Может индексы тормозят и их временно отключить? Код: plaintext 1. 2. 3. 4.
Может есть ненужные триггеры? А может журналирование мешает? Код: plaintext 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2010, 11:00 |
|
|
start [/forum/topic.php?fid=44&msg=36824742&tid=1607501]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
150ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
others: | 239ms |
total: | 487ms |
0 / 0 |