Interface ColumnSource

All Superinterfaces:
RelationalValueSource

public interface ColumnSource extends RelationalValueSource
Contract for source information pertaining to a physical column definition specific to a particular attribute context.

Conceptual note: this really describes a column from the perspective of its binding to an attribute, not necessarily the column itself.

  • Method Details

    • getName

      String getName()
      Obtain the name of the column.
      Returns:
      The name of the column. Can be null, in which case a naming strategy is applied.
    • getReadFragment

      String getReadFragment()
      A SQL fragment to apply to the column value on read.
      Returns:
      The SQL read fragment
    • getWriteFragment

      String getWriteFragment()
      A SQL fragment to apply to the column value on write.
      Returns:
      The SQL write fragment
    • isNullable

      Boolean isNullable()
      Is this column nullable?
      Returns:
      true indicates it is nullable; false non-nullable.
    • getDefaultValue

      String getDefaultValue()
      Obtain a specified default value for the column
      Returns:
      THe column default
    • getSqlType

      String getSqlType()
      Obtain the free-hand definition of the column's type.
      Returns:
      The free-hand column type
    • getDatatype

      JdbcDataType getDatatype()
      The deduced (and dialect convertible) type for this column
      Returns:
      The column's SQL data type.
    • getSizeSource

      SizeSource getSizeSource()
      Obtain the source for the specified column size.
      Returns:
      The source for the column size.
    • isUnique

      boolean isUnique()
      Is this column unique?
      Returns:
      true indicates it is unique; false non-unique.
    • getCheckCondition

      String getCheckCondition()
      Obtain the specified check constraint condition
      Returns:
      Check constraint condition
    • getComment

      String getComment()
      Obtain the specified SQL comment
      Returns:
      SQL comment
    • getIndexConstraintNames

      Set<String> getIndexConstraintNames()
    • getUniqueKeyConstraintNames

      Set<String> getUniqueKeyConstraintNames()