不是字段名不一样的原因,你应该是一个版块有多个斑竹,还是只有一个斑竹?假如一个版块有多个斑竹就要建个关联表了(版块ID和斑竹ID两字段的),再实现多对多关联或两个多对一关联,假如是只有一个斑竹就不要建表了,直接一对一关联
另外,上面两个表应该以ID为主键,不要以NAME为主键

解决方案 »

  1.   

    我想的是一个版块一个斑竹,主键是有点问题,应该以ID为主键
    CREATE TABLE PARENTBOARD
    (
        PBID                BIGINT         AUTO_INCREMENT  NOT NULL,     -- 分类版块ID
        PBNAME              VARCHAR(50),                                 -- 分类版块名
        PBWEBMASTERUID      BIGINT         NOT NULL,                     -- 分类版块版主UID
        PRIMARY KEY                                                      -- 主键
        (
            PBID
        ),
        INDEX                                                            -- 索引
        (
            PBID
        )
    )请问应该如何建立一对一关联啊?PARENTBOARD表 中的 PBWEBMASTERUID字段 与 USERINFO表 中的 UID字段进行关联 ,能给点类似配置代码吗?谢谢
      

  2.   

    <class name="Arentboard">
     .......    <many-to-one name="user" 
            column="PBWEBMASTERUID" 
            unique="true"
            not-null="true"/>
    </class><class name="Userinfo">
     .....
       <one-to-one name="parentboard" 
            property-ref="user"/>
    </class>
    这是一种双向的关联的方式
      

  3.   

    请教一下zhh1981上面的配置方法是怎么体现PBWEBMASTERUID与UID关联的啊?是不是只要把Userinfo表中的UID设置为主键,hibernate就会自动把PBWEBMASTERUID关联到UID上面啊?
      

  4.   

    是的,也可以多加把PBWEBMASTERUID设为UID的外键