我用table连接的数据表,以知某以字段名如学生,请问怎么获取这个字段名的数据类型,长度等字段信息

解决方案 »

  1.   

    if Dataset.FieldDefs.Items[0].DataType=ftstring then
             Edit2.text:='ftString';
     或 if Dataset.FieldByName(FieldName').DataType=ftstring then
           edit2.text:='ftString';
    字段类型有如下:
    TFieldType = (ftUnknown, ftString, ftSmallint, ftInteger, ftWord, ftBoolean, ftFloat, ftCurrency, ftBCD, ftDate, ftTime, ftDateTime, ftBytes, ftVarBytes, ftAutoInc, ftBlob, ftMemo, ftGraphic, ftFmtMemo, ftParadoxOle, ftDBaseOle, ftTypedBinary, ftCursor, ftFixedChar, ftWideString, ftLargeint, ftADT, ftArray, ftReference, ftDataSet, ftOraBlob, ftOraClob, ftVariant, ftInterface, ftIDispatch, ftGuid);
      

  2.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
      FT : TFieldType;
    begin
      FT := Table2.FieldDefs.Find('学生').dataType;
      if FT = ftString then
      showmessage('This is string');
    end;
      

  3.   

    showmessage(inttostr(Table2.FieldDefs.Find('Name').size));