본문 바로가기

Delphi/간단하게

간단하게 FieldByName 속도 향상시키기

반복문에서 FieldByName을 사용하는 것이 크게 걱정할 속도는 아니다라는 말도 있긴 하지만

정보 공유차원에서 작성해 보았습니다.


var     Field1 : TField; begin     Field1 := DataSet.FieldByName('Field1');     ShowMessage(Field1.AsString); end;

FieldByName이 매번 필드를 찾는 시간을 줄이고 Field1에 저장된 필드정보를 사용합니다.


다음과 같은 상황일 때 유의미하게 사용됩니다.

begin

while not DataSet.Eof do begin     DataSet.FieldByName('Field1').AsString := DataSet.FieldByName('Field1').AsString + 'Test String';     DataSet.Next; end;

end;

같은 필드를 두번이나 찾아가야하는 불필요한 상황을 아래와 같이 변경할 수 있습니다.

var     Field1 : TField; begin     Field1 := DataSet.FieldByName('Field1');     while not DataSet.Eof do     begin         Field1.AsString := Field1.AsString + 'Test String';         DataSet.Next;     end; end;


반응형