要开发一个BBS论坛,其中功能包括添加留言、修改留言、修改留言后保存原留言、跟贴、查询之类等,管理员还多加了删除留言,删除一般用户的功能。添加留言中,要保存的内容有:记录号、发贴人、时间、主题、内容、发贴种类。想问一下这样的数据库表应该项怎样建才算合理?

解决方案 »

  1.   

    不太明白你的问题,什么叫怎么建才算合理呢?
    不管怎么样,你最少要达到数据库设计的第三范式的标准吧
    如果能达到BCNF的标准那就更好了
      

  2.   

    我的意思是这个数据库应该有多少个表,每个表应该有那些字段?我是这样子建的:
    tab1(留言表):记录号、发贴人、时间、主题、内容、发贴种类、跟贴数。
    tab2(跟贴表):记录号、发贴人、时间、内容,父贴的记录号。
    tab3(原贴表):记录号、发贴人、时间、主题、内容、发贴种类。
    其中原贴表是留言修改后,原留言存放的地方。
    我想问一下这样子建表合理吗?
      

  3.   

    包括帖子表、用户表、论坛栏目表等。
    原贴表不用和跟贴表分开,原贴表改名帖子表,在帖子表中加一个字段父贴ID,没有父贴ID的当然就是原贴啦。
      

  4.   

    补充一点,就是我用的是oracle数据库,我用sequence来生成表的唯一字段,这时候对于存入lob字段的有一点麻烦,不知道大家是怎样解决的?
      

  5.   

    讨论一下,为什么MESSAGE留言表中要设USERNAME字段,而不是直接从USERNAMENO关联MEMBERRG用户登记表来获得?
      

  6.   

    go no up!可能大家以为是太简简了吧,但是实际上还是有问题的可研究的,因为一个数据设计得好不好,是软件继续开发的可行性问题之一!