觉得jiveMessage表只要threadID就可,而不需要forumID
******************************************************************
估计楼主不清楚jive的业务逻辑,建议多看看源码

解决方案 »

  1.   

    umljsp(夜未央天未白):能不能提示一下啊!
      

  2.   

    JIVE 论坛曾经看过一些呵呵,不过数据库表设计部分到没有怎么留意过,不过单看
    jiveMessage 里面多的这个 forumID 一种可能是效率上的考虑,当论坛帖子超过一定数量的时候,比如几十万条,如果此时需要查找某条 jiveMessage 是关联哪个 forumID ,那么需要关联 jiveThread 表,这样的笛卡儿乘积的查找还是比较费时间的。
      

  3.   

    想一下觉得jive这样设计数据库确实很有好处,我自己设计的数据库很有问题!
      

  4.   

    问题简略如下示:
    *栏目表*/
    CREATE TABLE Class (
     classID      BIGINT     IDENTITY(1,1)      NOT NULL ,            /* 栏目id */ 
    )
    /*种类表*/
    CREATE TABLE Kind (
     kindID       BIGINT     IDENTITY(1,1)      NOT NULL ,            /* 种类id */
     classID      BIGINT                        NOT NULL ,            /* 栏目id 参照Class表*/ 
    )
    /*新闻表*/
    CREATE TABLE News (
     newID        BIGINT      IDENTITY(1,1)     NOT NULL ,  /* 新闻id */
     classID      BIGINT                        NOT NULL ,  /* 栏目id 参照Class表*/
     kindID       BIGINT                        NOT NULL ,  /* 种类id 参照Kind表*/ 
    )
    /*评论表*/
    CREATE TABLE NewsReply ( 
     replyID      BIGINT      IDENTITY(1,1)     NOT NULL ,  /* 评论id */
     newID        BIGINT                         NOT NULL , /* 新闻id 参照News表*/ 
    )
    三级菜单显示如下:
    栏目下面分为种类,种类下面有新闻,新闻下面有评论:
    a.News表需不需要classID这个字段呢,因为可以通过Kind表来查找classID(整体考虑,特别是性能方面哪种更好?Class表中如果它的classID变动了的话,是不是会有点麻烦。)
    b.我的NewsReply表,要不要再加三个字段classID参照Class表,kindID参照Kind表,newID参照News表。
      

  5.   

    个人感觉既然 NewsReply 通过 newID 关联一张表就可以找到 kindID 和 classID,那么就没有必要再在 NewsReply 加这两个字段了