Cosminexus アプリケーションサーバ V8 リファレンス API編

[目次][索引][前へ][次へ]

2.6.51 @PrimaryKeyJoinColumn

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

(1) 説明

ほかのテーブルと結合する場合に外部キーとして使われるカラムを指定するアノテーションです。次の場合に使用します。

適用可能要素は,クラス,メソッド,およびフィールドです。

(2) 属性

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

属性名 任意/必須 属性の説明
name 任意 対象テーブルを結合するためのカラム名を指定する属性です。
referencedColumnName 任意 name属性で指定したカラムによって参照される結合先テーブルのプライマリキーのカラム名を指定する属性です。
columnDefinition 任意 CREATE文を出力するときにカラムに付加する制約をDDLで記載する属性です。
なお,この属性は,Cosminexus JPAプロバイダには対応していません。

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

(a) name属性

String

説明
対象テーブルを結合するためのカラム名を指定する属性です。
指定できるカラム名は,データベースの仕様に依存します。

デフォルト値
  • JOINED戦略を使用した場合
    スーパークラスのプライマリテーブルのプライマリキーのカラム名
  • @SecondaryTableを使用した場合
    プライマリテーブルのプライマリキーのカラム名
  • OneToOneリレーションシップを使用した場合
    対象となるエンティティのテーブルのプライマリキーのカラム名
(b) referencedColumnName属性

String

説明
name属性で指定したカラムによって参照される結合先テーブルのプライマリキーのカラム名を指定する属性です。@Columnのname属性の文字列と同じ値を指定してください。なお,指定する文字列は大文字,小文字もそろえてください。
指定できるカラム名は,データベースの仕様に依存します。
OneToOneリレーションシップでカラムの指定をプライマリキーにしなくてもユニークキー制約があれば動作してしまいますが,動作の保証はしません。

デフォルト値
  • JOINED戦略を使用した場合
    スーパークラスのプライマリテーブルのプライマリキーのカラム名
  • @SecondaryTableを使用した場合
    プライマリテーブルのプライマリキーのカラム名
  • OneToOneリレーションシップを使用した場合
    対象となるエンティティのテーブルのプライマリキーのカラム名