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

Вниз

1 или 2 млн. записей   Найти похожие ветки 

 
Mister   (2004-07-16 22:32) [0]

Здраствуйте! хотелось бы знать, можно ли как-нибудь дописать в таблицу с 1,5 млн записей не дождавшись загрузки ее допустим в  ADOTable, а то очень долго, к тому же сетка еще время отнимает... база Access 97


 
Anatoly Podgoretsky ©   (2004-07-16 22:42) [1]

Вечером


 
Sergey Masloff   (2004-07-16 23:50) [2]

Anatoly Podgoretsky ©   (16.07.04 22:42) [1]
>Вечером
Да она (ADOTable) еще в обед скажет что память кончилась ;-)


 
Vlad ©   (2004-07-17 00:21) [3]


> Mister   (16.07.04 22:32)  

Можно.
1)На то существует компонент ADOQuery, а так же SQL запросы insert ...
2) Существует понятие серверный курсор, при котором в датасет подгружаются не все данные сразу.


 
Mister   (2004-07-18 20:09) [4]

Vlad, спасибо!


 
Mister   (2004-07-18 20:09) [5]

Удалено модератором


 
злючка   (2004-07-19 00:20) [6]

Удалено модератором
Примечание: Личная переписка


 
Жека ©   (2004-08-03 23:55) [7]

У меня тоже возник вопрос. Есть база из 3900000 записей и мне нужно ее перегнать в формат для другой базы, но когда я начинаю использовать кверю, то память все равно  кончается. Вот как я это делаю:

 AssignFile(f, "D:\Phones 2002\2.txt");
 rewrite(f);
 j:=0;g:=2;k:=0;
   ADOQuery1.Active:=true;
 i:=ADOQuery1.RecordCount;
 //memo1.Text:=inttostr(i);
 p:=0;
 while not ADOQuery1.Eof do
 begin
  if j=50001 then Begin
   j:=0;
   g:=g+1;
   s:="D:\Phones 2002\"+inttostr(g)+".txt";
   ADOQuery1.Close;
   ADOQuery1.SQL.Clear;
   ADOQuery1.SQL.Text:=
   "Select * from base where id BETWEEN "+inttostr(p+1)+
   " and "+inttostr(p+50050);
   ADOQuery1.Open;
   Closefile(f);
   AssignFile(f,s);
   rewrite(f);
  end;
   p:=p+1;
  try
 s1:=" %#%Phone$"+ADOQuery1.Fields[0].Value+"$";
 writeln(f,s1);
 except
 writeln(f," %#%Phone$ $");
 end;
  try
  s1:="no_type$"+inttostr(ADOQuery1.Fields[1].Value)+"$";
  writeln(f,s1);
  except
  writeln(f,"no_type$ $");
 end;
   try
  s1:="Abonent$"+ADOQuery1.Fields[2].Value+"$";
  writeln(f,s1);
  except
  writeln(f,"Abonent$ $");
 end;
 try
  s1:="Address$"+ADOQuery1.Fields[3].Value+"$";
  writeln(f,s1);
  except
  writeln(f,"Address$ $");
 end;
 try
  s1:="Comments$"+ADOQuery1.Fields[4].Value+"$";
  writeln(f,s1);
  except
  writeln(f,"Comments$ $");
 end;
  j:=j+1;k:=k+1;
  ProgressBar1.Position := 100 * k div i;
  ADOQuery1.Next;
 end;
 try  Closefile(f) except  end;
end;

Подскажите пожалуйта, как мне освобождать память при использовании кверя.


 
Johnmen ©   (2004-08-04 00:00) [8]

Жека, ты хорошо понимаешь, ЧТО делает и КАК приведенный тобой кусок кода ?


 
Жека ©   (2004-08-04 00:07) [9]

Жека, ты хорошо понимаешь, ЧТО делает и КАК приведенный тобой кусок кода ?

Честно говоря не особо, но он работает и даже записывает данные из базы в файл (сейчас я работаю с базой менее 200000 записей)


 
Johnmen ©   (2004-08-04 00:14) [10]

Понятно...
см. Vlad ©  (17.07.04 00:21) [3]



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

Форум: "Базы";
Текущий архив: 2004.08.29;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.128 c
4-1089911371
BBoost
2004-07-15 21:09
2004.08.29
GetWindowDC


14-1091964547
Кириешки
2004-08-08 15:29
2004.08.29
Где в WinMe находится "настоящий" autoexec.bat ?


1-1092200722
lightix
2004-08-11 09:05
2004.08.29
Печать на матричный принтер из RichEdit


14-1091809121
Мазут Береговой
2004-08-06 20:18
2004.08.29
Еще одна композиция для 2-х гитар и флейты.


1-1092244853
Artog
2004-08-11 21:20
2004.08.29
При вызове Worda в потоке - синий экран.





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