0

以下は私のドメインクラスの詳細です。

class Age {
    String agetype
    static constraints = {
    }

}

HeidiSQL を使用しています。自動生成されたid列を削除したいのですが、主キーを「agetype」に設定します。どうすればいいですか?

4

1 に答える 1

1

デフォルトが必要ない場合、識別子はマッピングブロック内で簡単にカスタマイズできますid

class Age {
    String agetype

    static mapping = {
        id name: 'agetype', 
           column: 'AGE_TYPE', // if the column name is AGE_TYPE
           generator: 'assigned' // Unique String should assigned for agetype
    }

    static constraints = {
        agetype bindable: true //identifiers are not bindable by default
    }
}

上記のセットアップで、Age を次のように作成できるはずです。

new Age(agetype: 'Teen').save(flush: true)

再度実行すると、上記は主キー違反になります。

カスタマイズの詳細については、必要に応じてドキュメントを参照しください。idcolumn

于 2014-05-13T04:38:45.673 に答える