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

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.062 c
3-1097571552
B-boy Dimo-N
2004-10-12 12:59
2004.11.14
проблема выполнения запроса ADODS с параметром


14-1098736588
Soft
2004-10-26 00:36
2004.11.14
Американцы вкладывают деньги, а пашут другие.


4-1096835635
Profi
2004-10-04 00:33
2004.11.14
Проблемы с DLL


1-1099385372
Sash
2004-11-02 11:49
2004.11.14
excel


14-1098794537
Delphin
2004-10-26 16:42
2004.11.14
При переносе текста получаю "?? ???"





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский