USEGEAR

导航

d的free

function TMyDM.ExecSQLStream(aSQL : String) : Boolean;
var
  aServer: TUsegearClient;
  aStream : TStringStream;
begin
  Result := False;
  try
    aServer := TUsegearClient.Create(DSRestConnection);
    aStream := TStringStream.create(aSQL);
    aStream.Position := 0;
    Result := aServer.ExecSQLScriptSteam(aStream);

  finally
    aServer.Free; //aServer.free 把aStream也free了。这个要注意了。
    if aStream.Size>0 then   aStream.Free;
//同样下面顺序也会报错:
//aStream.Free; 也会把aServer给free
//aServer.Free;
end; end;

要理解free,才不会一头雾水。

posted on 2023-03-03 18:21  USEGEAR  阅读(22)  评论(0编辑  收藏  举报