@RepeatableSE(valueSE=SecondaryTables.class) @TargetSE(valueSE=TYPESE) @RetentionSE(valueSE=RUNTIMESE) public @interface SecondaryTable
SecondaryTable
アノテーションが指定されていない場合、エンティティのすべての永続フィールドまたはプロパティがプライマリテーブルにマップされていると想定されます。主キー結合列が指定されていない場合、結合列は、主テーブルの主キー列を参照し、主テーブルの参照される主キー列と同じ名前と型を持つと想定されます。
Example 1: Single secondary table with a single primary key column. @Entity @Table(name="CUSTOMER") @SecondaryTable(name="CUST_DETAIL", pkJoinColumns=@PrimaryKeyJoinColumn(name="CUST_ID")) public class Customer { ... } Example 2: Single secondary table with multiple primary key columns. @Entity @Table(name="CUSTOMER") @SecondaryTable(name="CUST_DETAIL", pkJoinColumns={ @PrimaryKeyJoinColumn(name="CUST_ID"), @PrimaryKeyJoinColumn(name="CUST_TYPE")}) public class Customer { ... }
修飾子と型 | オプションの要素と説明 |
---|---|
StringSE | catalog (オプション)テーブルのカタログ。 |
ForeignKey | foreignKey (オプション)テーブル生成が有効な場合に、 pkJoinColumns 要素に対応する列の外部キー制約の生成を指定または制御するために使用されます。 |
Index[] | indexes (オプション)テーブルのインデックス。 |
PrimaryKeyJoinColumn[] | pkJoinColumns (オプション)主テーブルとの結合に使用される列。 |
StringSE | schema (オプション)テーブルのスキーマ。 |
UniqueConstraint[] | uniqueConstraints (オプション)テーブルに配置される一意の制約。 |
public abstract StringSE name
public abstract StringSE catalog
デフォルトはデフォルトカタログです。
public abstract StringSE schema
デフォルトはユーザーのデフォルトスキーマです。
public abstract PrimaryKeyJoinColumn[] pkJoinColumns
デフォルトは、主テーブルの主キー列と同じ名前の列です。
public abstract ForeignKey foreignKey
pkJoinColumns
要素に対応する列の外部キー制約の生成を指定または制御するために使用されます。この要素といずれかの pkJoinColumns
要素の foreignKey
要素の両方が指定されている場合、動作は未定義です。どちらの場所でも外部キーアノテーション要素が指定されていない場合は、永続性プロバイダーのデフォルトの外部キー戦略が適用されます。public abstract UniqueConstraint[] uniqueConstraints
Column
および JoinColumn
アノテーションで指定された制約と、主キーマッピングで必要とされる制約に加えて適用されます。デフォルトでは追加の制約はありません。
public abstract Index[] indexes
Copyright © 2019 Eclipse Foundation.
Use is subject to license terms.