Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Delphi -> SQL (1.500.000) записей / 8 сообщений из 8, страница 1 из 1
02.12.2001, 13:44
    #32018271
Timur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi -> SQL (1.500.000) записей
Господа,подскажите как быстро вставить данные (примерно 1.500.000 строк).
Использую Delphi + SQL.
Мой вариант работает очень долго ...

for i:=0 to 150000 do begin
//код
.................
taStat.Insert;
taStat.FieldByName('AnyField').AsString:=anyValue;
..................

end;
...
Рейтинг: 0 / 0
02.12.2001, 19:05
    #32018276
Strannik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi -> SQL (1.500.000) записей
Попробуй использовать оператор BULK INSERT. Быстрее не бывает.
Правда он может использоваться только пользователями из группы sysadmin(MSSQL 7) или bulkadmin(MSSQL 2000).
...
Рейтинг: 0 / 0
03.12.2001, 08:33
    #32018306
Timur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi -> SQL (1.500.000) записей
Спасибо.
Но дело в том, что данные генерируются в цикле(набирается статистика), т.е. изначально, при первой итерация существует данные только для одной записи, при второй итерации - данные только для второй записи и т.д.
Я вот подумал, а не быстрее ли будет сначала записать все в структурированный файл, а затем из него качнуть в SQL Server при помощи BULK INSERT. Что Вы на это скажите? Может кто пробовал?
...
Рейтинг: 0 / 0
03.12.2001, 10:05
    #32018314
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi -> SQL (1.500.000) записей
BULK INSERT - самый быстрый метод.
Если делать в цикле из клиента, то хотя-бы сделайте хр. процедуру и вставляйте через неё.
...
Рейтинг: 0 / 0
03.12.2001, 10:18
    #32018316
JINX
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi -> SQL (1.500.000) записей
Посмотрите раздел справки Delphi
Developing Database Applications->Working with ADO components->Using batch updates.
...
Рейтинг: 0 / 0
03.12.2001, 10:49
    #32018317
Timur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi -> SQL (1.500.000) записей
Спасибо!
...
Рейтинг: 0 / 0
03.12.2001, 11:44
    #32018325
Артем
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi -> SQL (1.500.000) записей
Можно сделать SQL запрос prepare с параметрами. Тоже сильно разгоняет.
...
Рейтинг: 0 / 0
03.12.2001, 14:03
    #32018335
Timur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi -> SQL (1.500.000) записей
Спасибо за советы!!!
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Delphi -> SQL (1.500.000) записей / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]