我有一个table1 TAS,它有:
<class name="TAS" table="NCPTB016_TAS">
<composite-id>
<key-many-to-one column="NU_MACRO_PROCESSO_007" name="MacroProcesso"/>
<key-property column="NU_TAS" name="Id" />
</composite-id>
... //and some other properties我有一张桌子,就是:
<class name="STAS" table="NCPTB017_STAS">
<composite-id>
<key-many-to-one column="NU_MACRO_PROCESSO_016" name="MacroProcesso"/>
<key-many-to-one column="NU_TAS_016" name="TAS" />
<key-property column="NU_STAS" name="Id" />
</composite-id>
... //some properties表STAS是一个复合id。这是一个TAS密钥(即复合id)和另一个密钥。我该怎么画呢?当我这样做时,我犯了一个错误:
外键(FK451D68E632669A4:NCPTB017_STAS NU_TAS_016)必须具有与引用的主键相同的列数(NCPTB016_TAS NU_MACRO_PROCESSO_007,NU_TAS)
更简单的是,我如何映射具有复合id的多对一?
例: table1有一个合成体-id Id1,Id2 Table2有一个来自Table1的多对一,因为它有一个由Id1和Id2组成的复合FK。
谢谢你的帮助!
发布于 2010-09-21 21:42:41
我从来没有用过,但我会这样说:
<many-to-one ...>
<column name="key1" />
<column name="key2" />
</many-to-one>https://stackoverflow.com/questions/3764610
复制相似问题