用户注册时用户表中的主键是User_id,
比如两个人进行一项买卖业务,合同表中要用到合同号Compact_id(主键), 卖方Seller_id,买方Buyer_id均对应于User_id,不行吗?
应该怎么解决?
谢了! 

解决方案 »

  1.   

    我这是通过hibernate的xml文件把用户表和合同表的关联关系映射到oracle数据库中,能正常导入到oracle数据库中,但一运行程序就会报错,这是xml文件
    <?xml version="1.0"?>
    <!DOCTYPE hibernate-mapping PUBLIC 
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
    <hibernate-mapping package="com.cstd.hibernate">
    <class name="Compact">
    <id name="id">
    <generator class="assigned"/>
    </id>
                      //Seller_id引用User_id
                    <one-to-one name="user" column="Seller_id" class="User"/>                
                    //Buyer_id也引用User_id
    <one-to-one name="user" column="Buyer_id" class="User"/>
           </class>
    </hibernate-mapping>
    但运行会提示这个错误Duplicate property mapping of user found in com.cstd.hibernate.Compact
     重复的属性映射user在合同表(Compact)中
    这个该如何解决,由于小弟刚学习hibernate,在这块很多问题都不懂,望大哥见谅,期待着你的解决
      

  2.   


    我这是通过hibernate的xml文件把用户表和合同表的关联关系映射到oracle数据库中,能正常导入到oracle数据库中,但一运行程序就会报错,这是xml文件
    <?xml version="1.0"?>
    <!DOCTYPE hibernate-mapping PUBLIC  
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
    <hibernate-mapping package="com.cstd.hibernate">
    <class name="Compact">
    <id name="id">
    <generator class="assigned"/>
    </id>
      //Seller_id引用User_id
      <one-to-one name="user" column="Seller_id" class="User"/>   
      //Buyer_id也引用User_id
    <one-to-one name="user" column="Buyer_id" class="User"/> 
      </class>
    </hibernate-mapping>
    但运行会提示这个错误Duplicate property mapping of user found in com.cstd.hibernate.Compact
     重复的属性映射user在合同表(Compact)中
    这个该如何解决,由于小弟刚学习hibernate,在这块很多问题都不懂,望大哥见谅,期待着你的解决
    试试是不是name="user" 重复
      

  3.   

    就是name="user"重复,但我想要把合同表里卖方Seller_id,买方Buyer_id均对应于用户表里的User_id,这个该怎么办比较好?
      

  4.   

    可以的
    CONSTRAINT sid_uid_ PRIMARY KEY (Seller_id) references(User_id);
    CONSTRAINT bid_uid_ PRIMARY KEY (buyer_id) references(User_id);
      

  5.   

    这个应该是没问题的ALTER TABLE Contract_table 
    ADD CONSTRAINT FK_Contract_table_User_table_Seller_id  FOREIGN KEY Seller_id
      REFERENCES User_table(User_id)  
    ALTER TABLE Contract_table 
    ADD CONSTRAINT FK_Contract_table_User_table_Buyer_id  FOREIGN KEY Buyer_id
      REFERENCES User_table(User_id)