留言表 theMessage
id(留言主题 自增1) content
回复表 reply
id(回复主题,外键指向theMessage的id) replyID(自增1) reContent我这样做的话 1、replyID不认留言主题,拼命的增加。
2、我回复表id要通过留言表传参,向数据库插入id。我想让replyID随着回复主题id而变化。
id 1    replyID 1,2,3,4,5
id 2    replyID 1,2,3,4,5还有回复id的如何跟留言id同步。
请问怎么做,请教高手,想找个师傅。。

解决方案 »

  1.   

    添加回复时获取主题id插入回复表 reply
    replyID设计自增的,Messageid回复主题ID,指向theMessage的id
    也可使用一个表
    id,title,topicid(0为主题,大于0回复)content
      

  2.   

    如果留言主题theMessage的id为1,
    则回复主题reply表在该主题下的数据应该为:
    id  replyID
     1     1
     1     2
     1     3
    等等,什么叫"replyID不认留言主题"??
      

  3.   

    就像论坛每个帖子的回复。。回复都是从1,2,3这样排序的。不干扰。
    而我自己设计的,是把每个帖子下的回帖数全加起来了。
    我不知道每帖子下的回帖排序和总数。
    那个id改成title更好理解点用惯了,不好意思。
      

  4.   

    这样的话reply表里要增加一个字段,假设叫replyNo,插入回复记录时,先搜索该字段的最大值,然后加一,sql语句大致是:declare @newReplyNo int
    select @newReplyNo = max(replyNo) from reply where id = @id -- 主题idif @newReplyNo is null
       set @newReplyNo = 1insert into reply (id, replyNo, recontent) values (@id, @newReplyNo, @recontent)你设计的表中把replyid 作为自增类型,当然不能控制了
      

  5.   

    shit,应该是:
    declare @newReplyNo int
    select @newReplyNo = max(replyNo) from reply where id = @id -- 主题idif @newReplyNo is null
      set @newReplyNo = 1
    else
      set @newReplyNo = @newReplyNo + 1insert into reply (id, replyNo, recontent) values (@id, @newReplyNo, @recontent)