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

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

2.6.54 @SecondaryTable

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

(1) 説明

エンティティクラスにセカンダリテーブルを指定するアノテーションです。

エンティティクラスがデータベース上の複数のテーブルにわたってマッピングされる場合に指定します。

@SecondaryTableをエンティティクラス内で指定しない場合,エンティティクラスのすべての永続化プロパティまたは永続化フィールドは,プライマリテーブルで指定されたテーブルとマッピングします。

適用可能要素は,クラスです。

(2) 属性

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

属性名 任意/必須 属性の説明
name 必須 セカンダリテーブル名を指定する属性です。
catalog 任意 セカンダリテーブルのカタログ名を指定する属性です。
なお,この属性は,Cosminexus JPAプロバイダには対応していません。
schema 任意 セカンダリテーブルのスキーマ名を指定する属性です。
pkJoinColumns 任意 セカンダリテーブルがプライマリテーブルと結合するために使用する外部キーカラムを指定する属性です。
uniqueConstraints 任意 テーブルでのユニークキー制約を指定する属性です。
なお,この属性は,Cosminexus JPAプロバイダには対応していません。

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

(a) name属性

String

説明
セカンダリテーブル名を指定する属性です。
指定できるテーブル名は,データベースの仕様に依存します。

デフォルト値
なし
(b) schema属性

String

説明
セカンダリテーブルのスキーマ名を指定する属性です。
指定できるスキーマ名は,データベースの仕様に依存します。

デフォルト値
使用するデータベースのデフォルトのスキーマ名
(c) pkJoinColumns属性

PrimaryKeyJoinColumn[]

説明
セカンダリテーブルの外部キーカラムを指定する属性です。@PrimaryKeyJoinColumnの配列で指定します。
この要素が指定されない場合,セカンダリテーブルの外部キーカラムはプライマリテーブルのプライマリキーカラムと同じ名前と型を持ちます。このため,セカンダリテーブルはプライマリテーブルのプライマリキーカラムを参照します。

デフォルト値
指定できる値は,@PrimaryKeyJoinColumnの配列で指定できる範囲です。詳細は,「2.6.51 @PrimaryKeyJoinColumn」を参照してください。