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

Вниз

импорт в БД   Найти похожие ветки 

 
ragnar   (2013-03-29 15:16) [0]

К примеру, импортируется файл с 100к записей, которые должны быть добавлены в таблицу БД. Как их правильно добавлять? Если использовать INSERT-запрос получается, что он выполнится 100к раз.


for I := 0 to Items.Count - 1 do // 100к
begin
 // ... INSERT SQL ...


 
O'ShinW ©   (2013-03-29 15:31) [1]


> Как их правильно добавлять?

Зависит от задачи.

А добавлять быстро - надо почитать синтаксис аналога bulk insert используемой СУБД


 
ragnar   (2013-03-29 15:44) [2]

Задача: есть xml-файл, содержащий данные о товарах. в нем могут хранится данные от 1 до 10 млн товаров. Нужно реализовать как можно более быстрый их импорт. По окончанию импорта, нужно как-то отбразить товары, которые не удалось импортировать.

СУБД: Firebird


 
Медвежонок Пятачок ©   (2013-03-29 16:03) [3]

Если использовать INSERT-запрос получается, что он выполнится 100к раз.

а сколько надо?


 
ragnar   (2013-03-29 16:21) [4]


> Если использовать INSERT-запрос получается, что он выполнится
> 100к раз.
>
> а сколько надо?


при работе по сети 1000 записей добавляется за 11-14 мин. это разве нормально?


 
Медвежонок Пятачок ©   (2013-03-29 16:34) [5]

Вставлять порциями. Не каждую строку в отдельной транзакции, а сто строк в одной транзакции.


 
Плохиш ©   (2013-03-29 16:48) [6]


> ragnar   (29.03.13 16:21) [4]

Надо прочитать документацию по используемой бд на предмет транзакций.


 
RWolf ©   (2013-03-29 17:13) [7]


> при работе по сети 1000 записей добавляется за 11-14 мин.
>  это разве нормально?


> СУБД: Firebird

ненормально. столько за секунду улетает, обычными INSERT"ами, разумеется.


 
Inovet ©   (2013-03-29 17:39) [8]

+ Параметры несколько ускорят, и не зыбыть Prepare перед циклом.


 
Podgoretsky   (2013-03-30 17:44) [9]

Наверно все серверы одинаковы, раз версия не указывается, видимо не важно.



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

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

Наверх




Память: 0.48 MB
Время: 0.005 c
2-1363965731
Margolis
2013-03-22 19:22
2014.02.02
запуск приложения из памяти


11-1249177598
Ruzzz
2009-08-02 05:46
2014.02.02
D2009, Unicode и Ansi-строки одновременно, перегрузка функций


2-1364333792
znt
2013-03-27 01:36
2014.02.02
Вероятность победы + random


15-1376130585
MonoLife
2013-08-10 14:29
2014.02.02
Вот такие желптушки.


15-1376597130
Разведка
2013-08-16 00:05
2014.02.02
Проявление высших сил