2012-03-08 5 views
0

Привет всем, я новичок в этой группе. У меня проблема во многих отношениях. У меня была таблица с именем machinemaster, в которой есть один первичный ключ & есть 12 других таблиц, скажем, биос, hdd &, так что в этом случае все таблицы имеют ссылку machinemaster say machineID.at первые данные будут вставлены в machinemaster & после получения ссылки id, он будет вставлен во все дочерние таблицы .. он отлично работает ... но когда i введите данные в дочернюю таблицу, сделайте нуль для всего поля машиниста, кроме id ... так что ват не так, что я dnt knw ... есть проблема в cascade = delete & lazy = false ... я сохранил это поэтому скажите мне, правильно ли это, если да, то почему родительские данные обновляются до нуля, когда я вставляю данные в дочерний элемент на основе ссылки родителя ... чем кс заранееHibernate Много к одному в каскаде delete

+0

опубликовать ваши HBM отображения и попытаться отформатировать вопрос немного. – ManuPK

ответ

0

я бы с иерархией наследования, как этот

class Part 
{ 
    int id; 
} 

class Hdd extends Part 
{ 
    string someProp; 
} 

class Bios extends Part 
{ 
    string version; 
} 

<class name="Part" table="mashinemaster"> 
    <id name="id" > 
    <generator ...> 
    </id> 
    <joined-subclass name="Hdd" table="hddtable"> 
    <key column="machineID" /> 
    <property name="someProp" /> 
    </joined-subclass> 
    <joined-subclass name="Bios" table="biostable"> 
    <key column="machineID" /> 
    <property name="version" /> 
    </joined-subclass> 
</class> 
Смежные вопросы