bbs论坛数据库设计遇到的问题,哪位大虾来帮忙解答一下?谢谢

用带参数的存储过程实现--------查询某个用户在某个版块的发帖情况(主帖+回帖),并返回发帖数和回帖数-------要求:在没有指定版块名字的情况下显示所有版块的发帖信息,下面是我写的代码:请高手指教一下怎么改
if exists(select * from sysobjects where name='proc_find3')  
drop procedure proc_find3
go
create procedure proc_find3
@username varchar(10),   --用户名
@sname varchar(100),       --版块名称
@sumtopic int output,   --总的发帖数
@sumreply int output    --总的回帖数
as
set nocount on
declare @userid varchar(10),@sid int   --用户编号和版块编号
select @userid=uid from bbsusers where uname=@username
select @sid=sid from bbssection where sname=@sname      --版块编号
if exists(select * from bbstopic where tuid=@userid and tsid=@sid)
begin
select @sumtopic=count(*) from bbstopic where tuid=@userid and tsid=@sid   
print @username+'发表的主帖如下:'
select '发帖时间'=convert(varchar(10),ttime,111),'点击率'=tclickcount,'主题'=ttopic,'内容'=tcontents
from bbstopic where tuid=@userid  
end
else
begin
set @sumtopic=0
print @username+'没有发过主帖。'
end
if exists(select * from bbsreply where ruid=@userid and rsid=@sid)
begin
select @sumreply=count(*) from bbsreply where ruid=@userid and rsid=@sid
print @username+'发表的回帖如下:'
select '回帖时间'=convert(varchar(10),rtime,111),'点击率'=rclickcount,'内容'=rcontents
from bbsreply where ruid=@userid
end
else
begin
set @sumreply=0
print @username+'没有发过回帖。'
end
go
declare @sumtopic int,@sumreply int
exec proc_find3 '可卡因','.NET',@sumtopic output,@sumreply output
select @sumtopic,@sumreply

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值