2012-01-13 25 views
2

タイトルでは、Entity Framework、MySQL、CodeFirstを使用してオブジェクトを削除しようとしています。DELETE CASCADEをサポートしていますか?

私は私の物で、多対多の関係を持っている、と私は唯一の大会削除:私のコンテキストで

modelBuilder.Conventions.Remove<PluralizingTableNameConvention>(); 

を。しかし、私はまだこれを取得、削除しようとしたとき:

Cannot delete or update a parent row: a foreign key constraint fails (`db`.`jagtartjagtrejse`, CONSTRAINT `JagtArt_JagtRejser_Target` FOREIGN KEY (`JagtRejse_JagtRejseID`) REFERENCES `jagtrejse` (`JagtRejseID`)) 

は、MySQLコネクタでサポートされていない、削除カスケードのか、それとも何か間違っているのですか?

+0

これらの質問は役立ちますhttp://stackoverflow.com/questions/3334619/cannot-delete-or-update-a-parent-row-a-foreign-key-constraint-fails、http://stackoverflow.com/questions/1905470/can not-delete-or-update-a-parent-row-a-foreign-key-constraint-fails – Eranga

+0

ありがとうございます、残念ながらEntity FrameworkとCodeFirstに関連しているので、どんなSQL DDLにも触れてはいけません。 – Dynde

答えて

0

https://stackoverflow.com/a/5532950/965013

私は、これは、あなたの質問に答えると信じています。リンクが削除にカスケードを無効にする方法を示していますが、表示されるように、それをオンにすると、単にEF移行ファイルcascadeDelete: trueを強制することで

modelBuilder.Entity<...>() 
     .HasRequired(...) 
     .WithMany(...) 
     .HasForeignKey(...) 
     .WillCascadeOnDelete(true); 
0

を呼び出すの問題であり、私は同じ結果を得ます。

ON DELETEは、CASCADEのときにRESTRICTに設定します。
FKを手動で変更して機能させる必要があります。

編集:BugがMysqlのバグトラッカーに提出しました。

関連する問題