ty := FieldTypeNames[FDQuery3.FieldDefList.FieldDefs[0].DataType];
s := FDQuery3.Fields.Fields[0].FieldName;
value := FDQuery3.Fields.FieldByNumber(1).AsString;
-----------------------------
var
s: string; // TFieldDefs
ty: string;
value: string;
Field: TField;
begin
Field := FDQuery3.Fields[0];
s := Field.FieldName;
ty := FieldTypeNames[Field.DataType];
value := Field.AsString;
Memo1.Text := s + ' ' + ty + ' ' + value;