2.7.6 @Column

<この項の構成>
(1) 説明
(2) 属性

(1) 説明

永続化フィールドまたは永続化プロパティと,データベース上のカラムとのマッピングを指定するアノテーションです。

永続化プロパティまたは永続化フィールドに明示的に@Columnを指定しない場合でも,@Columnが指定されたように永続化フィールドまたは永続化プロパティは扱われます。この場合@Columnの各属性値にはデフォルト値が適用されます。

適用可能要素は,メソッドとフィールドです。

(2) 属性

@Columnの属性の一覧を次の表に示します。

属性名任意/必須属性の説明
name任意カラム名を指定する属性です。
unique任意プロパティがユニークキーであるかどうかを指定する属性です。
なお,この属性は,CJPAプロバイダには対応していません。
nullable任意データベースのカラムにnull値を指定できるかどうかを指定する属性です。
なお,この属性は,CJPAプロバイダには対応していません。
insertable任意@Columnで指定したカラムをSQLのINSERT文に含むかどうかを指定する属性です。
updatable任意@Columnで指定したカラムをSQLのUPDATE文に含むかどうかを指定する属性です。
columnDefinition任意CREATE文を出力するとき,カラムに付加する制約をDDLで記載する属性です。
なお,この属性は,CJPAプロバイダには対応していません。
table任意カラムを含むテーブル名を指定する属性です。
length任意カラムの長さを指定する属性です。
なお,この属性は,CJPAプロバイダには対応していません。
precision任意カラムの精度を指定する属性です。カラムが数値型の場合に指定します。
なお,この属性は,CJPAプロバイダには対応していません。
scale任意カラムのスケールを指定する属性です。カラムが数値型の場合に指定します。
なお,この属性は,CJPAプロバイダには対応していません。

CJPAプロバイダで対応する属性の詳細を次に示します。

(a) name属性
String
説明
カラム名を指定する属性です。
指定できるカラム名は,データベースの仕様に依存します。
デフォルト値
このアノテーションを指定したプロパティ名またはフィールド名
(b) insertable属性
boolean
説明
@Columnで指定したカラムをSQLのINSERT文に含むかどうかを指定する属性です。指定できる値は,trueまたはfalseです。
それぞれの値の意味は次のとおりです。
true:@Columnで指定したカラムをSQLのINSERT文に含みます。
false:@Columnで指定したカラムをSQLのINSERT文に含みません。
デフォルト値
true
(c) updatable属性
boolean
説明
@Columnで指定したカラムをSQLのUPDATE文に含むかどうかを指定する属性です。指定できる値は,trueまたはfalseです。
それぞれの値の意味は次のとおりです。
true:@Columnで指定したカラムをSQLのUPDATE文に含みます。
false:@Columnで指定したカラムをSQLのUPDATE文に含みません。
デフォルト値
true
(d) table属性
String
説明
カラムを含むテーブル名を指定します。
指定できるテーブル名は,データベースの仕様に依存します。
デフォルト値
プライマリテーブル名