我现在有两张表:客户表CUSTOMERS,和设备表DEVICES客户表和设备表之间是一对多的关系:一个客户可以有1到n个设备,而一个设备可以属于0或1个客户。请问:如果新加一个客户的时候一定要添加一个设备,应该怎么设计数据库,以及hibernate映射文件???(即如何限制在Insert一个CUSTOMER的时候,一定要有属于这个CUSTOMER的DEVICE)????详细一点最好!我用的是Oracle9i2的数据库。

解决方案 »

  1.   

    CUSTOMERS的配置文件里 设置DEVICES的时候 加<set name="DEVICES" inverse="true" not-null="true">
    <set name="DEVICES" inverse="true" not-null="true">
       <key>
           <column name="DEVICES_COD" length="12" not-null="true" />
       </key>
       <one-to-many class="com.web.pojo.DEVICES" />
    </set>不知道这样行不行,你可以试一下
      

  2.   

    写个触发器比较容易 用hibernate还是尽量避免多表关联吧