Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT

## javax.persistence
Annotation Type Column

    @Target(value={METHOD,FIELD})
    @Retention(value=RUNTIME)
    public @interface Column

Is used to specify the mapped column for a persistent property or field. If no `Column` annotation is specified, the default values apply.

>         Example 1:

>         @Column(name="DESC", nullable=false, length=512)
>         public String getDescription() { return description; }

>         Example 2:

>         @Column(name="DESC",
>                 columnDefinition="CLOB NOT NULL",
>                 table="EMP_DETAIL")
>         @Lob
>         public String getDescription() { return description; }

>         Example 3:

>         @Column(name="ORDER_COST", updatable=false, precision=12, scale=2)
>         public BigDecimal getCost() { return cost; }

Since:
  Java Persistence 1.0

Optional Element Summary
`java.lang.String` | `columnDefinition` (Optional) The SQL fragment that is used when generating the DDL for the column.
`boolean` | `insertable` (Optional) Whether the column is included in SQL INSERT statements generated by the persistence provider.
`int` | `length` (Optional) The column length.
`java.lang.String` | `name` (Optional) The name of the column.
`boolean` | `nullable` (Optional) Whether the database column is nullable.
`int` | `precision` (Optional) The precision for a decimal (exact numeric) column.
`int` | `scale` (Optional) The scale for a decimal (exact numeric) column.
`java.lang.String` | `table` (Optional) The name of the table that contains the column.
`boolean` | `unique` (Optional) Whether the column is a unique key.
`boolean` | `updatable` (Optional) Whether the column is included in SQL UPDATE statements generated by the persistence provider.

### name

    public abstract java.lang.String name

  (Optional) The name of the column. Defaults to the property or field name.

  Default:
    ""

### unique

    public abstract boolean unique

  (Optional) Whether the column is a unique key. This is a shortcut for the `UniqueConstraint` annotation at the table level and is useful for when the unique key constraint corresponds to only a single column. This constraint applies in addition to any constraint entailed by primary key mapping and to constraints specified at the table level.

  Default:
    false

### nullable

    public abstract boolean nullable

  (Optional) Whether the database column is nullable.

  Default:
    true

### insertable

    public abstract boolean insertable

  (Optional) Whether the column is included in SQL INSERT statements generated by the persistence provider.

  Default:
    true

### updatable

    public abstract boolean updatable

  (Optional) Whether the column is included in SQL UPDATE statements generated by the persistence provider.

  Default:
    true

### columnDefinition

    public abstract java.lang.String columnDefinition

  (Optional) The SQL fragment that is used when generating the DDL for the column.

  Defaults to the generated SQL to create a column of the inferred type.

  Default:
    ""

### table

    public abstract java.lang.String table

  (Optional) The name of the table that contains the column. If absent the column is assumed to be in the primary table.

  Default:
    ""

### length

    public abstract int length

  (Optional) The column length. (Applies only if a string-valued column is used.)

  Default:
    255

### precision

    public abstract int precision

  (Optional) The precision for a decimal (exact numeric) column. (Applies only if a decimal column is used.) Value must be set by developer if used when generating the DDL for the column.

  Default:
    0

### scale

    public abstract int scale

  (Optional) The scale for a decimal (exact numeric) column. (Applies only if a decimal column is used.)

  Default:
    0

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT