Class StructuredField

java.lang.Object
dev.frostlake.types.StructuredField
All Implemented Interfaces:
Serializable

public final class StructuredField extends Object implements Serializable
One declared field of a structured OBJECT(name type [NOT NULL], ...) type.

The name is kept VERBATIM — structured field names are case-sensitive and are NOT folded like ordinary SQL identifiers. Live-verified on a real account: CAST(OBJECT_CONSTRUCT('x','a') AS OBJECT(x VARCHAR)) yields {"x":"a"} (lower case preserved), CAST(<OBJECT(x VARCHAR)> AS OBJECT(X VARCHAR) RENAME FIELDS) yields {"X":"a"}, and CAST(OBJECT_CONSTRUCT('x','a') AS OBJECT(X VARCHAR)) FAILS with "Typed object schema mismatch in conversion" — the declared X does not match the key x.

See Also:
  • Constructor Details

    • StructuredField

      public StructuredField(String name, DataType dataType, boolean notNull)
  • Method Details

    • getName

      public String getName()
    • getDataType

      public DataType getDataType()
    • isNotNull

      public boolean isNotNull()
    • toString

      public String toString()
      Overrides:
      toString in class Object