Probleme relation many-to-one lors de suppresion en cascade
bonjour j'ai un probleme,
j'ai deux entités Contenu et Etat_Contenu.
A la relation suivant :
un Contenu peut avoir 0 ou n états
un Etat_Contenu est relatif à un seul Contenu.
Navigabilité que dans un sens un Etat_Contenu connait son Contenu
J'ai donc :
Code:
1 2 3 4
| moncontenu (type Contenu)
monetat (type EtatContenu)
monetat.Contenu = moncontenu; |
Mais quand je supprime mon Contenu j'ai une erreur si un Etat_Contenu s'y refere.
Citation:
ERROR NHibernate.Util.ADOExceptionReporter NHibernate.Util.ADOExceptionReporter - L'instruction DELETE est en conflit avec la contrainte REFERENCE 'ETAT_CONTENU_CONTENU_FKC'. Le conflit s'est produit dans la base de données 'xxxxx', table 'xxxxx.ETAT_CONTENU', column 'CONTENU_FK'.
Je suis preneur de toutes bonnes idées. Ma relation n'est pas bi-directionnel car un Contenu peut avoir plusieurs milliers d'états.
Je vous joins mes mappings
Code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| <?xml version="1.0" encoding="UTF-8"?>
<hibernate-mapping
xmlns="urn:nhibernate-mapping-2.2"
default-cascade="none">
<class
name="Entites.Structures.Contenu, Core"
table="CONTENU"
dynamic-insert="false"
dynamic-update="false"
lazy="true">
<cache usage="read-write" />
<id name="Id" type="Int64" unsaved-value="null">
<column name="ID" sql-type="BIGINT"/>
<generator class="assigned">
</generator>
</id>
.
</class>
</hibernate-mapping> |
Code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| <?xml version="1.0" encoding="UTF-8"?>
<hibernate-mapping
xmlns="urn:nhibernate-mapping-2.2"
default-cascade="none">
<class
name="Entites.Suivis.EtatContenu, Core"
table="ETAT_CONTENU"
dynamic-insert="false"
dynamic-update="false"
lazy="true">
<cache usage="read-write" />
<id name="Id" type="Int64" unsaved-value="0">
<column name="ID" sql-type="BIGINT"/>
<generator class="native">
</generator>
</id>
.
<many-to-one name="Contenu" class="Entites.Structures.Contenu, Core" outer-join="auto" foreign-key="ETAT_CONTENU_CONTENU_FKC">
<column name="CONTENU_FK" not-null="true" sql-type="BIGINT"/>
</many-to-one>
</class>
</hibernate-mapping> |