![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Всем добрый день!
Следующая задача: необходимо организавать импорт данных из таблицы dbf в sql server. Проблема состоит в том, что dbf таблица очень большая - 1,5 Гб. Когда я пытаюсь загрузить ее в sql server через BDE, то таблица загружается, но при просмотре в sql server-е она оказывается не вся, а примерно половина записей dbf таблицы, а если я ее загружаю через ODBC драйвер, то во время загрузки, программа начинает увеличивать используемую память и в итоге программа во время загрузки натыкается на сообщение об исчерпании виртуальной памяти (примерно через пол часа работы на пеньке 3Ггц и 2 Гб оперативной памяти, 1 или 2 Гб виртуальной). Загрузку провожу таким путем: ADOCommand1.CommandText:= 'INSERT Polis VALUES ('''+ t_polis.FieldByName('smo').AsString+''','''+ t_polis.FieldByName('polis_s').AsString+''','''+ t_polis.FieldByName('polis_n').AsString+''','+ datn_new+','+ datk_new+','''+ t_polis.FieldByName('fam').AsString+''','''+ t_polis.FieldByName('im').AsString+''','''+ t_polis.FieldByName('otch').AsString+''','+ datr_new+','''+ t_polis.FieldByName('pol').AsString+''','''+ t_polis.FieldByName('snils').AsString+''','''+ t_polis.FieldByName('pr_rab').AsString+''','''+ t_polis.FieldByName('mrab').AsString+''','''+ t_polis.FieldByName('innrab').AsString+''','''+ t_polis.FieldByName('kpprab').AsString+''','+ IntToStr(t_polis.FieldByName('sost').AsInteger)+', '+ d_input_new+','''+ t_polis.FieldByName('okved').AsString+''')'; ADOCommand1.Execute; Подскажите пожалуйста как можно обойти такую ситуацию. У нас есть программа стороннего разработчика, которая выполняет такой импорт и при этом никаких подобных сообщений не выскакивает и еще, когда я запускаю импорт в программе стороннего разработчика, открывал диспетчер задач и увидел, что во время загрузки программа этого разработчика не грузит процессор, а грузится sqlserver. А когда я в своей программе запускаю импорт, то почти весь процессор загружает моя программа и при этом постоянно увеличивает использование виртуальной памяти. У кого есть какие предложения, буду рад услышать. |