[NH 3.0] Mapping hbm.xml - Champ id en trop
Bonjour à tou(te)s,
J'ai un projet utilisant NH3.0. Je teste le mapping avec un projet de test Nunit qui me crée la base de test à chaque fois et donc les tables définies dans les fichiers de mapping hbm.xml
Il se trouve que j'ai un message d'erreur :
Citation:
Test 'FirstSolution.Tests.ReferenceRepository_Fixture.Can_add_new_ref' failed: NHibernate.HibernateException : Can't create table 'spring.#sql-d08_8a' (errno: 150)
----> MySql.Data.MySqlClient.MySqlException : Can't create table 'spring.#sql-d08_8a' (errno: 150)
Mes tables basiques (sans clé étrangère) sont correctement créées mais les tables avec clé étrangere ont un champ id qui est ajouté en plus à la fin de la table...alors qu'il est inutile...
Voici par exemple un mapping qui à la création me rajoute un champ id non voulu dans la table
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 27 28 29 30 31 32 33 34
|
<?xml version="1.0" encoding="utf-8"?>
<hibernate-mapping assembly="FirstSolution" namespace="FirstSolution.Domain" xmlns="urn:nhibernate-mapping-2.2">
<class name="stations_sta" table="stations_sta" lazy="true" >
<id name="STA_ID">
<column name="STA_ID" sql-type="int(11)" not-null="true" />
<generator class="identity" />
</id>
<property name="STA_NAME">
<column name="STA_NAME" sql-type="varchar(45)" not-null="true" />
</property>
<many-to-one insert="false" update="false" lazy="false" name="STA_FAC">
<column name="STA_FAC" sql-type="int(11)" not-null="true" />
</many-to-one>
<!--
<property name="STA_FAC">
<column name="STA_FAC" sql-type="int(11)" not-null="true" />
</property>
-->
<bag name="fb_serials_srls" inverse="true" cascade="none">
<key column="" />
<one-to-many class="fb_serials_srl" />
</bag>
<bag name="l_station_addresses_numalloc_sans" inverse="true" cascade="none">
<key column="" />
<one-to-many class="l_station_addresses_numalloc_san" />
</bag>
<bag name="l_station_serials_numalloc_ssns" inverse="true" cascade="none">
<key column="" />
<one-to-many class="l_station_serials_numalloc_ssn" />
</bag>
</class>
</hibernate-mapping> |
Quelqu'un aurait un avis, une piste ?
Merci d'avance.
MAJ - Pb résolu - il fallait remplir la balise Key column pour éviter qu'il crée un champ supplémentaire