举个例子问:
比如,我在数据库里设置4个表,student(id,name)course(id,name),选课表:sc(id,course_id,student_id,
homework(id,sc_id)
student与course是多对多关系,sc与homework是一对多关系(一门课可有多次作业).
现在在Hibernate配置关联,我在student和course之间配置了多对多的关联关系,其中关联表为sc,
在sc和homework配置一对多的关联关系,4个表都有设置id主键
分别建立4个映射文件student.hbm.xml,course.hbm.xml,sc.hbm.xml,homework.hbm.xml,现在我的问题是:在进行多对多关联时,一般关联表sc都不用建立映射文件,但我由于sc表还要配置一对多关联,所以建了映射文件,请问这样的设计是否有问题?
因为我有一个类似的设计运行后报以下异常:
org.hibernate.MappingException: Foreign key (FK99C1A7DB17E1C3EB:homework [sc_id])) must have same number of columns as the referenced primary key (sc [course_id,user_id])
但实际上我在数据库设置homework[sc_id]这个外键引用的是sc的主键id,而不是[course_id,user_id].急等各位前辈赐教啊!!!

解决方案 »

  1.   

    给我发个邮件[email protected],给你个小项目看看吧,hibernate数据关联几乎都涉及到了,我设计给学生做练习使用的
      

  2.   

    "zyts"后面的是小写字母LL,不是数字11,呵呵
      

  3.   

    sc [course_id,user_id]怎么會出現兩個主鍵哦
      

  4.   


    我也觉得不解,我明明设置主键是id,映射文件设置也没问题啊,为什么说sc [course_id,user_id]是主键呢?
      

  5.   


    邮件地址:lisheng0624@126com 万分感谢!
      

  6.   

    麻烦发我一份,邮件地址:lisheng0624@126com 万分感谢!
      

  7.   


    哥们,还有没有也给我来一份,万分感谢,
    邮件地址:[email protected]