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

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

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


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