パッケージ jakarta.persistence

アノテーションインターフェース MapKeyColumn


@TargetSE({METHODSE,FIELDSE}) @RetentionSE(RUNTIMESE) public @interface MapKeyColumn
マップキーが基本型であるマップのキー列のマッピングを指定します。name() 要素が指定されていない場合、デフォルトで次のものを連結したものになります: 参照関連フィールドまたはプロパティの名前。"_"; "KEY"。

例:

導入:
2.0
  • オプション要素の概要

    オプション要素
    修飾子と型
    オプションの要素
    説明
    (オプション)列の DDL を生成するときに使用される SQL フラグメント。
    boolean
    (オプション)永続プロバイダーによって生成された SQL INSERT ステートメントに列が含まれるかどうか。
    int
    (オプション)列の長さ。
    (オプション)マップキー列の名前。
    boolean
    (オプション)データベース列が null 可能かどうか。
    (オプション) この列を宣言する、生成された DDL に追加される SQL フラグメント。
    int
    (オプション) SQL 型 decimal または numeric、あるいは同様のデータベースネイティブ型の列の精度。
    int
    (オプション) SQL 型 decimal または numeric、あるいは同様のデータベースネイティブ型の列のスケール。
    (オプション)列を含むテーブルの名前。
    boolean
    (オプション)列が一意キーであるかどうか。
    boolean
    (オプション)永続プロバイダーによって生成された SQL UPDATE ステートメントに列が含まれるかどうか。
  • 要素の詳細

    • name

      StringSE name
      (オプション) マップキー列の名前。それが見つかるテーブルはコンテキストによって異なります。
      • マップキーが要素コレクション用の場合、マップキー列はマップ値のコレクションテーブル内にあります。
      • マップキーが結合テーブルを使用する ManyToMany エンティティ関連または OneToMany エンティティ関連の場合、マップキー列は結合テーブル内にあります。
      • マップキーが外部キーマッピング戦略を使用する OneToMany エンティティ関連用である場合、マップキー列はマップの値であるエンティティのテーブル内にあります。

      デフォルトは、参照関連フィールドまたはプロパティの名前を連結したものになります。"_"; "KEY"。

      デフォルト:
      ""
    • unique

      boolean unique
      (オプション) 列が一意のキーであるかどうか。これはテーブルレベルでの UniqueConstraint アノテーションのショートカットであり、一意キー制約が単一の列のみに対応する場合に便利です。この制約は、主キーマッピングに伴う制約およびテーブルレベルで指定された制約に加えて適用されます。
      デフォルト:
      false
    • nullable

      boolean nullable
      (オプション)データベース列が null 可能かどうか。
      デフォルト:
      false
    • insertable

      boolean insertable
      (オプション)永続プロバイダーによって生成された SQL INSERT ステートメントに列が含まれるかどうか。
      デフォルト:
      true
    • updatable

      boolean updatable
      (オプション)永続プロバイダーによって生成された SQL UPDATE ステートメントに列が含まれるかどうか。
      デフォルト:
      true
    • columnDefinition

      StringSE columnDefinition
      (オプション)列の DDL を生成するときに使用される SQL フラグメント。

      推測された型の列を作成するために、デフォルトで生成された SQL になります。

      デフォルト:
      ""
    • options

      StringSE options
      (オプション) この列を宣言する、生成された DDL に追加される SQL フラグメント。columnDefinition() と組み合わせて使用することはできません。
      導入:
      3.2
      デフォルト:
      ""
    • table

      StringSE table
      (オプション)列を含むテーブルの名前。

      デフォルト: マップキーが要素コレクション用の場合、マップ値のコレクションテーブルの名前。マップキーが結合テーブルを使用する OneToMany または ManyToMany エンティティ関連の場合、マップの結合テーブルの名前。マップキーが外部キーマッピング戦略を使用した OneToMany エンティティ関連用の場合、マップの値であるエンティティのプライマリテーブルの名前。

      デフォルト:
      ""
    • length

      int length
      (オプション)列の長さ。

      varchar 型や varbinary 型など、長さによって型がパラメーター化される列にのみ適用されます。

      デフォルト:
      255
    • precision

      int precision
      (オプション) SQL 型 decimal または numeric、あるいは同様のデータベースネイティブ型の列の精度。

      正確な数値型の列にのみ適用されます。

      デフォルト値 0 は、プロバイダーが決定した精度を推測する必要があることを示します。

      デフォルト:
      0
    • scale

      int scale
      (オプション) SQL 型 decimal または numeric、あるいは同様のデータベースネイティブ型の列のスケール。

      正確な数値型の列にのみ適用されます。

      デフォルト値 0 は、プロバイダーが決定した精度を推測する必要があることを示します。

      デフォルト:
      0