Вниз
Скачать: CL | DM;

ошибка при работе с параметрами запроса   Найти похожие ветки 

 
Scott Storch   (2011-07-20 12:04) [0]

Почему при освобождении памяти, занимаемой параметром IdParam, возникает ошибка AccessViolation по 0 адресу.


function TConnectionDataModule.GetSectionIdsFieldValue(Id: Integer): string;
var
 IdParam, ContentIdParam, ContanerIdParam: TDBISAMParam;
 SectionIdList: TStrings;
begin
 IdParam := CommandQuery.Params.CreateParam(ftInteger, ID_PARAM_NAME);
 try
   IdParam.AsInteger := Id;
   CommandQuery.SQL.Text := Format("SELECT primer_id FROM item WHERE (item_id = :%s) AND (flags <> 1)",
     [ID_PARAM_NAME]);
   CommandQuery.Open;
   SectionIdList := TStringList.Create;
   try
     SectionIdList.Add(CommandQuery.Fields[0].AsString);
     ContentIdParam := CommandQuery.Params.CreateParam(ftInteger,
       CONTENT_ID_PARAM_NAME);
     try
       ContentIdParam.AsInteger := Id;
       ContanerIdParam := CommandQuery.Params.CreateParam(ftInteger,
         CONTANER_ID_PARAM_NAME);
       try
         ContanerIdParam.AsInteger := StrToInt(SectionIdList[0]);
         CommandQuery.SQL.Text := Format("SELECT contaner_id FROM content WHERE (content_id = :%s) AND (contaner_id <> :%s) AND (flags <> 1)",
           [CONTENT_ID_PARAM_NAME, CONTANER_ID_PARAM_NAME]);
         CommandQuery.Open;
         CommandQuery.First;
         while not CommandQuery.Eof do
         begin
           CategoryIdList.Add(CommandQuery.Fields[0].AsString);
           CommandQuery.Next;
         end;
         Result := SectionIdList.DelimitedText;
       finally
         ContanerIdParam.Free;
       end;
     finally
       ContentIdParam.Free;
     end;
   finally
     SectionIdList.Free;
   end;
 finally
   IdParam.Free; // Access violation
 end;
end;


 
sniknik ©   (2011-07-20 12:16) [1]

любите справку источник знаний...

CreateParam method (TParams)
Creates a new field parameter object and inserts it into the Items list.


хочешь удалять сам? "высуни" его оттуда предварительно, там его тоже кто то удаляет, а лучше постигни дзен по примерам справки...


 
Scott Storch   (2011-07-20 12:25) [2]

Ясн. спасибо



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.005 c
2-1311690897
nofical
2011-07-26 18:34
2011.11.13
Работа с ReadProcessMemory, как прочитать данные ячейки?


2-1311230686
alexdn
2011-07-21 10:44
2011.11.13
Изменение Label


15-1310504388
Gu
2011-07-13 00:59
2011.11.13
Delphi Pulsar и Xe2 beta


3-1266143158
dmitry1208197320
2010-02-14 13:25
2011.11.13
Как можно сохранить таблицу на диске


1-1272628592
Яцхен
2010-04-30 15:56
2011.11.13
Как вывести форму на панельке или табшите другой формы?




   Наверх