0

EclipseLink 4.2、Glassfish、JavaEE6

EclipseLink の @OnUpdateCascade アノテーションに相当するものを探しています。このアノテーションは存在しないためです (なぜですか?)。

別のテーブル「user_groups」の外部キーが参照するユーザーの電子メールを変更しています。そのため、MySQL 外部キー制約エラーが発生します。外部キーインデックスを手動で変更して「ON UPDATE CASCADE」を含める以外に、とにかくこれを見つけることはできません。

代替方法、または機能が存在しない理由 (@OnDeleteCascade が存在する) をいただければ幸いです。

public class User {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private int id;

    @Column(unique = true, nullable = false)
    private String email;

    @ElementCollection(targetClass = Group.class, fetch = FetchType.EAGER) 
    @CollectionTable(name = "users_groups",
            joinColumns =
            @JoinColumn(name = "email", nullable = false, referencedColumnName = "email"))
    @Enumerated(EnumType.STRING)
    @Column(name = "groupname", nullable = false)
    private List<Group> groups;
}
4

0 に答える 0