Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Перекодировка таблиц


Viktor ©   (2004-05-30 22:30:00) 

Здравствуйте Мастера! Есть dbf файл и БД FireBird. Необходимо закинуть записи из dbf. Делаю перекодировку так:

procedure TForm1.Button2Click(Sender: TObject);
var
src:PChar;
begin
Table1.First;
Gauge1.MaxValue:=Table1.RecordCount;
ProgressBar1.Max:=Table1.RecordCount;
while not Table1.Eof do
begin
 with pFIBStoredProc1 do
  begin
   Prepare;
   ParamByName('SUMA').AsCurrency:=Table1SUMMA.AsCurrency;
   Src:=StrPCopy(src,Table1FIO.AsString);
   OemToChar(Pointer(Table1FIO.AsString), Src);
   ParamByName('FIO').AsString:=StrPas(src);
   ExecProc;
   Close;
  end;
 Table1.Next;
 Gauge1.AddProgress(1);
 ProgressBar1.StepBy(1);
 end;
pFIBTransaction1.CommitRetaining;
pFIBDataSet1.CloseOpen(True);
Gauge1.Progress:=0;
end;

Записи вставляются, но после окончания цикла выскакивает ошибка " access violation .....". Что неправильно?
Спасибо.


mad0max   (2004-05-31 06:55:00) [1]

to Viktor

Мдяяяяя. кто бы еще пямять под srcвыделил...
возможно это наведет тебя на какие-нибудь мысли?
var
src:PChar;
begin
    GetMem(src, 1024);
...
end;

я так думаю...


Наверх

Титульная страница Поиск, карта сайта Написать письмо