Skip to main content

TFieldType

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, ftTimeStamp, ftFMTBcd, ftFixedWideChar, ftWideMemo, ftOraTimeStamp, ftOraInterval, ftLongWord, ftShortint, ftByte, ftExtended, ftConnection, ftParams, ftStream, ftTimeStampOffset, ftObject, ftSingle)

Example

procedure DescribeFieldType(AType: TFieldType; var Value: Variant);
begin
case AType of
ftString, ftWideString, ftFixedChar, ftFixedWideChar, ftMemo, ftWideMemo:
Value := 'text';
ftSmallint, ftInteger, ftWord, ftLargeint, ftLongWord, ftShortint, ftByte:
Value := 'integer';
ftFloat, ftCurrency, ftBCD, ftFMTBcd, ftExtended, ftSingle:
Value := 'numeric';
else
Value := 'other';
end;
end;

Usage

TFieldType identifies the field, field-definition and parameter data types available to Velox scripts.

Members

ValueOrdinalMeaning
ftUnknown0Unknown or not-yet-resolved field type.
ftString1Variable-length narrow/ANSI string field.
ftSmallint2Signed 16-bit integer field.
ftInteger3Signed 32-bit integer field.
ftWord4Unsigned 16-bit integer field.
ftBoolean5Boolean field.
ftFloat6Double-precision floating field.
ftCurrency7Four-decimal Currency field.
ftBCD8BCD/decimal field compatible with Currency limits.
ftDate9Date-only field.
ftTime10Time-only field.
ftDateTime11Combined Velox date/time field.
ftBytes12Fixed-length byte field.
ftVarBytes13Variable-length byte field.
ftAutoInc14Auto-incrementing signed 32-bit field.
ftBlob15Unstructured binary large object.
ftMemo16Narrow/ANSI text large object.
ftGraphic17Graphic/blob field.
ftFmtMemo18Formatted memo field.
ftParadoxOle19Legacy Paradox OLE field.
ftDBaseOle20Legacy dBase OLE field.
ftTypedBinary21Typed binary field.
ftCursor22Cursor/result-set field.
ftFixedChar23Fixed-length narrow/ANSI character field.
ftWideString24Variable-length Unicode string field.
ftLargeint25Signed 64-bit integer field.
ftADT26Abstract data type field.
ftArray27Database array field.
ftReference28Database reference field.
ftDataSet29Nested dataset field.
ftOraBlob30Oracle-specific BLOB field.
ftOraClob31Oracle-specific CLOB field.
ftVariant32Variant-valued field.
ftInterface33Interface-valued field.
ftIDispatch34Automation IDispatch field.
ftGuid35GUID field.
ftTimeStamp36Timestamp record field.
ftFMTBcd37Formatted BCD field with explicit precision/scale support.
ftFixedWideChar38Fixed-length Unicode character field.
ftWideMemo39Unicode text large object.
ftOraTimeStamp40Oracle-specific timestamp field.
ftOraInterval41Oracle-specific interval field.
ftLongWord42Unsigned 32-bit integer field.
ftShortint43Signed 8-bit integer field.
ftByte44Unsigned 8-bit integer field.
ftExtended45Extended floating-point field.
ftConnection46Database connection-valued field.
ftParams47Parameter-collection field.
ftStream48Stream-valued field.
ftTimeStampOffset49Timestamp with UTC-offset data.
ftObject50Object-valued field.
ftSingle51Single-precision floating field.

Behavior and boundaries

  • Scripts can use the listed values through ftSingle; ftLargeUint is not available in Velox scripting.
  • Do not store the numeric ordinals in configuration or external protocols. Store the member name because available values can change between Velox versions.
  • ftString/ftFixedChar and ftWideString/ftFixedWideChar differ in character representation. Inspect actual field class, size and provider behavior before assuming an encoding.
  • ftBCD, ftFMTBcd, ftCurrency, ftFloat, ftExtended and ftSingle have different precision/range models. Preserve precision and scale separately.
  • Provider-specific and structured values may not support every As... conversion. Null state is separate from TFieldType.

Additional Technical Info

TFieldType describes the logical data type of Delphi dataset fields, field definitions and parameters. It is metadata: it does not itself convert a value, guarantee a database server type, or describe nullability, size, precision, scale or encoding.

The Code Library index shows only the first 300 characters of this declaration and stops after ftADT. The complete current script registration continues through ftSingle, as shown above.

Related Code Library entries

External references

Created 2026-07-15