3.设计结果及分析
(1) 修改密码
心酸股东(用户编号为2)修改用户密码为abcdef
Supper(用户编号为3)修改用户密码为123456
update bbsUsers set Upassword='abcdef' where UID='2'
update bbsUsers set Upassword ='123456' where UID='3'
(2) 系统信息。
查询用户昵称为心酸股东的发贴情况。
此查询需要查看主贴表和跟贴表,但这些表中没有“心酸股东”的昵称,所以需要依靠用户编号才能查找。
set nocount on
print''
print '个人信息'
select 昵称=Uname,等级=Uclass, 个人说明=Uremark, 积分=Upoint
from bbsUsers where Uname='心酸股东'
print'心酸股东发贴如下:'
select 发贴时间=convert(varchar(10),Ttime,111),点击率=TclickCount,主题内容=Ttopic
from bbsTopic,bbsUsers where bbsTopic.TuID=bbsUsers.UID and bbsUsers.Uname='心酸股东'
print'心酸股东回帖如下图3:'
select 回贴时间=convert(varchar(10),Rtime,111),点击率=RclickCount,回帖内容=Rcontents
from bbsReply,bbsUsers where bbsReply.RuID=bbsUsers.UID and bbsUsers.Uname='心酸股东'
(2) 提高用户的积分。
鉴于目前的星级用户偏少,用户普遍因积分较少而发贴热情不高,这也间接影响了论坛的人气,版主希望通过提高用户的积分,从而增加星级用户。每用户均增加积分300。星级用户的评定规则如下:
积分:0-500评为1星级;500-1000评为2星级;1000-2000评为3星级;2000-4000评为4星级;4000-5000评为5星级,5000以上评为6星级,提分后显示用户星级和积分情况。
print '开始提分,请稍候。。。。'
update bbsUsers set Upoint= Upoint+200 where Ustate<>4
update bbsUsers
set Uclass=
case
when Upoint<500 then 1
when Upoint between 500 and 1000 then 2
when Upoint between 1001 and 2000 then 3
when Upoint between 2001 and 4000 then 4
when Upoint between 4001 and 5000 then 5
else 6
end
print '----------------------加分后的用户级别情况-----------------------'
select 昵称=Uname,星级=
case
when Uclass=0 then ''
when Uclass=1 then '★'
when Uclass=2 then '★★'
when Uclass=3 then '★★★'
when Uclass=4 then '★★★★'
when Uclass=5 then '★★★★★'
else '★★★★★★'
end ,
积分=Upoint
from bbsUsers
go
上一页 [1] [2] [3] [4] [5] [6] 下一页