Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.14;
Скачать: CL | DM;

Вниз

Insert 10000 записей как ускорить?   Найти похожие ветки 

 
awp ©   (2004-10-12 16:19) [0]

Необходимо ускорить добавление записей в таблицу.
Есть таблица DBF(по одному адресу) и таблица Oracle(по другому адресу) компонент - ODAC.Net. Обработка примерно 35 сек при запуске exe а при запуске через php 2-3 минуты. Как ускорить? Может поиграть свойствоми ODAC(AutoCommit or CachedUpdate)?

код:

DbfTable.First;
while not DbfTable.Eof do
begin
 for i:= posG to DbfTable.FieldCount - 1 do
 begin
  if Length(Trim(DbfTable.Fields[i].Value)) <> 0 then
  begin
    OraTable.Insert;
    OraTable.FieldByName("k").Value:= DbfTable.FieldValues["k"];
    .....................................
    10 полей
    .....................................
    OraTable.Post;
  end;
 end;
 DbfTable.Next;
end;


 
Johnmen ©   (2004-10-12 16:25) [1]

Надо просто выполнять INSERT INTO ..., а не городить огород с набором данных.


 
roottim ©   (2004-10-12 16:57) [2]

TOraLoader
или Johnmen ©   (12.10.04 16:25) [1]


 
Reindeer Moss Eater ©   (2004-10-12 17:07) [3]

Кардинально ускорить можно так:

1.Создаем скрипт из инсертов или просто текстовый файл в формализованном виде.
2. Жмем его zlib"ом
3. Заливаем на сервер (передавая его процедуре в качестве blob параметра)
4. Находим реализацию zlib на яве и переносим её на сервер.
5. Распаковываем на сервере наш блоб и обрабатываем его там же.


 
awp ©   (2004-10-12 17:21) [4]

Спасибо roottim, попробую OraLoader

Reindeer Moss Eater - так не получится сервер с оракулом на одной машине а загрузка на другой а файл DBF на третей :))))
желание заказчика - закон! :))))


 
Reindeer Moss Eater ©   (2004-10-12 17:24) [5]

А мой способ и не предполагает, что dbf лежит на машине с ораклом.



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

Текущий архив: 2004.11.14;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.022 c
6-1091738810
MeMO
2004-08-06 00:46
2004.11.14
Вопрос по статье "Мониторинг сетей в Delphi"


3-1097649698
alsov1
2004-10-13 10:41
2004.11.14
Как передать результат селекта параметром в процедуру?


3-1097629887
dark
2004-10-13 05:11
2004.11.14
Как включить поддержку кодировки в таблицу формата *.dbf (dBASE)


3-1097483098
BanderLog
2004-10-11 12:24
2004.11.14
FB 1.5 Создания БД программно.


4-1096448850
Chipset
2004-09-29 13:07
2004.11.14
ТВ-тюннеры: создание софта для.