パッケージ jakarta.persistence
アノテーションインターフェース SecondaryTable
@RepeatableSE(SecondaryTables.class)
@TargetSE(TYPESE)
@RetentionSE(RUNTIMESE)
public @interface SecondaryTable
アノテーション付きエンティティクラスのセカンダリテーブルを指定します。1 つ以上のセカンダリテーブルを指定すると、エンティティクラスのデータが複数のテーブルに保存されます。
SecondaryTable
アノテーションが指定されていない場合、エンティティのすべての永続フィールドまたはプロパティがプライマリテーブルにマップされていると想定されます。主キー結合列が指定されていない場合、結合列は、主テーブルの主キー列を参照し、主テーブルの参照される主キー列と同じ名前と型を持つと想定されます。
例 1: 単一の主キー列を持つ単一の副テーブル。
例 2: 複数の主キー列を持つ単一の副テーブル。
このアノテーションは、MappedSuperclass
または Embeddable
アノテーションが付けられたクラスには適用できません。
- 導入:
- 1.0
必須定数のサマリー
必須要素オプション要素の概要
オプション要素修飾子と型オプションの要素説明(オプション)テーブルのカタログ。(オプション) テーブルに適用される制約を確認します。(オプション) テーブルに適用されるコメント。(オプション) テーブル生成が有効なときに、pkJoinColumns()
要素に対応する列の外部キー制約の生成を指定または制御するために使用されます。Index[]
(オプション)テーブルのインデックス。(オプション) このテーブルを作成する生成された DDL ステートメントに追加される SQL フラグメント。(オプション)主テーブルとの結合に使用される列。(オプション)テーブルのスキーマ。(オプション)テーブルに配置される一意の制約。
要素の詳細
name
StringSE name(必須)テーブルの名前。
catalog
StringSE catalog(オプション)テーブルのカタログ。デフォルトはデフォルトカタログです。
- デフォルト:
- ""
schema
StringSE schema(オプション)テーブルのスキーマ。デフォルトはユーザーのデフォルトスキーマです。
- デフォルト:
- ""
pkJoinColumns
PrimaryKeyJoinColumn[] pkJoinColumns(オプション)主テーブルとの結合に使用される列。デフォルトは、主テーブルの主キー列と同じ名前の列です。
- デフォルト:
- {}
foreignKey
ForeignKey foreignKey(オプション) テーブル生成が有効なときに、pkJoinColumns()
要素に対応する列の外部キー制約の生成を指定または制御するために使用されます。この要素といずれかのpkJoinColumns()
要素の#foreignKey
要素の両方が指定された場合の動作は未定義です。どちらの場所にも外部キーアノテーション要素が指定されていない場合は、永続化プロバイダーによってデフォルトの外部キー戦略が選択されます。- 導入:
- 2.1
- デフォルト:
- @jakarta.persistence.ForeignKey(PROVIDER_DEFAULT)
uniqueConstraints
UniqueConstraint[] uniqueConstraints(オプション) テーブルに設定される一意の制約。これらは通常、テーブル生成が有効な場合にのみ使用されます。これらの制約は、Column
およびJoinColumn
アノテーションによって指定された制約、および主キーマッピングによって伴う制約に加えて適用されます。デフォルトでは追加の制約はありません。
- デフォルト:
- {}
indexes
Index[] indexes(オプション)テーブルのインデックス。これらは、テーブル生成が有効な場合にのみ使用されます。- 導入:
- 2.1
- デフォルト:
- {}
check
CheckConstraint[] check(オプション) テーブルに適用される制約を確認します。これらは、テーブル生成が有効な場合にのみ使用されます。- 導入:
- 3.2
- デフォルト:
- {}
comment
StringSE comment(オプション) テーブルに適用されるコメント。これは、テーブル生成が有効な場合にのみ使用されます。- 導入:
- 3.2
- デフォルト:
- ""
options
StringSE options(オプション) このテーブルを作成する生成された DDL ステートメントに追加される SQL フラグメント。これは、テーブル生成が有効な場合にのみ使用されます。- 導入:
- 3.2
- デフォルト:
- ""