0

OneToOne 関係でドメイン オブジェクトを作成しようとしています。Aが親でBが子です。

A から B に削除をカスケードするさまざまな方法を試しましたが、データベースの作成を見ると、ON DELETE CASCADE が設定されていません。

誰かが私が間違っていることを見ることができますか

A:

@Entity    
@Table(name = "financeaccountcurrencymapping")
    public class FinanceAccountCurrencyMapping implements Serializable {

        @Id
        @GeneratedValue
        private long id;

        @OneToOne(cascade = CascadeType.ALL, optional = false, orphanRemoval = true, mappedBy = "financeAccountCurrencyMapping")
        private FinanceAccount financeAccount;

CascadeType.ALL または orphanRemoval のいずれかがトリックを実行する必要があることはわかっていますが、そうではありません。

B:

@Entity
@Table(name = "financeaccount")
public class FinanceAccount implements Serializable {


    @OneToOne(optional = true)
    private FinanceAccountCurrencyMapping financeAccountCurrencyMapping;

誰かが削除をカスケードしない理由を理解できますか?

4

1 に答える 1

0

私はそれを解決しましたが、JPAでは解決しませんでした

子に @OnDelete(action = OnDeleteAction.CASCADE) を設定します

于 2012-11-27T08:18:40.457 に答える