大工15春《数据库原理》大作业题目及要求文档格式.docx
《大工15春《数据库原理》大作业题目及要求文档格式.docx》由会员分享,可在线阅读,更多相关《大工15春《数据库原理》大作业题目及要求文档格式.docx(28页珍藏版)》请在冰豆网上搜索。
在论坛里,人们之间的交流打破了空间、时间的限制。
论坛连人方便,可以通过Internet登录,也可以通过电话网拨号登录。
论坛站往往是由一些有志于此道的爱好看建立,对所有人都免费开放。
而且,由于论坛的参与人众多,因此各方面的话题都不乏热心者。
可以说,在论坛上可以找到任何你感兴趣的话题。
1.2数据需求
论坛数据库需要完成功能主要有:
论坛最主要的功能之一。
包括各类的学术专题讨论区,疑难问题解答区和闲聊区等等。
在这些信件区中,上站的用户留下自己想要与别人交流的信件,如在各种软件硬件的使用、天文、医学、体育、游戏……等等方面的心得和经验。
这是论坛一个令用户们心动的功能。
一般的论坛站台中,大多设有交流用的文件区,里面依照不同的主题分区存放了为数不少的软件,有的论坛站还设有CD-ROM光碟区,使得电脑玩家们对这个眼前的宝库都趋之若鹜。
众多的共享软件和免费软件都可以通过论坛获取得到,不仅使用户得到合适的软件,也使软件开论坛对国内Shareware(共享软件)的发展将起到不可替代的推动作用。
国内论坛主要提供的文件服务区主要有论坛建站、通信程序、网络工具、Internet程序、加解密工具、多媒体程序、电脑游戏、病毒防治、图象、创作发表和用户这是论坛最基本的功能了。
一些有心的站长会在自己的站台上摆出为数众多的信息。
如怎样使用论坛、国内论坛台站介绍、某些热门软件的介绍、论坛用户统计资料等;
用户在生日时甚至会收到站长的一封热情洋溢的“贺电”,令您感受到B论坛还会自动统计出热门话题排行榜,看看谁的文章受到的回应最多线的论坛可以与其他同时上站的用户做到即时的联机交谈。
2.方案图表设计
2.1.1用户E-R图
图2.1用户论坛USERE-R图
2.1.2主贴E-R图
图2.2用户论坛TOPICE-R图
2.1.3板块E-R图
图2.3用户论坛SectionE-R图
2.1.4回帖E-R图
图2.4用户论坛REPLYE-R图
2.1.5整体E-R图
图2.5整体E-R图
2.2数据字典
表2-1 论坛Users用户信息表
表中列名
数据类型
可否为空
说明
UID
Int
notnull(主键)
用户编号
UName
char
notnull
用户姓名
UPassword
用户密码
UEmail
用户Email
UBirthday
datetime
用户生日
USex
bit
用户性别
UClass
用户等级
UStatement
varchar
用户个人说明
URegDate
用户注册时间
UState
tinyint
用户状态
UPoint
in
用户积分
表2-2 论坛Topic主贴信息表格
TID
主帖编号
TSID
主帖版块编号
Tuid
主帖用户编号
TReplyCount
主帖回复次数
TEmotion
Char(10)
主帖表情
TTopic
Varchar
主帖标题
TContents
Text
主帖内容
TTime
Datetime
发帖时间
TClickCount
主帖点击次数
TLastClickT
主帖最后点击时间
表2-3 论坛Section板块信息
sid
Notnull(主键)
版块编号
SName
Notnull
版块名称
SMasterID
版主编号
SStatement
版块说明
SClickCount
版块点击次数
STopicCount
int
版块主题数
表2-4 论坛Reply回帖信息表
SID
Sname
Char
SMasterID
板块说明
板块主题数
2.4关系图:
图2.6数据库存表关系图
3.数据库源代码
3.1数据库建立
3.1.1创建数据库
--建库,建表,添加约束
--插入测试数据
--存在检测
usemaster
go
ifexists(select*fromsysdatabaseswherename='
论坛'
)
dropdatabase论坛
--建库
createdatabase论坛
onprimary
(
name=论坛_data,--逻辑名
filename='
d:
\论坛_data.mdf'
--物理文件
size=20MB,--初始大小
filegrowth=10%,--文件增长率
maxsize=200MB--初始大小
logon
name=论坛_log,--逻辑名
\论坛_data.ldf'
size=10mb,--初始大小
filegrowth=10%,--文件增长率
maxsize=100MB--最大尺寸
3.1.2用户信息表建立
use论坛
ifexists(select*fromsysobjectswherename='
论坛Users'
droptable论坛Users
createtable论坛Users
Uidintconstraintpk_Uidprimarykey,--用户编号
Unamechar(8)notnull,--用户姓名
UPasswordchar(16)constraintdf_UPassworddefault'
888888'
--用户密码
UEmailchar(20)notnullconstraintck_Uemailcheck(Uemaillike'
%@%.%'
),--用户EMAIL
UBirthdaydatetimenotnull,--用户生日
Usexintconstraintdf_Usexdefault'
1'
--用户性别
UClassintconstraintdf_UClassdefault'
--用户等级
UStatementvarchar(150)notnull,--用户说明
URegDatedatetimenotnulldefaultgetdate(),--用户注册时间
UStatetinyintconstraintdf_UStatedefault'
--用户状态
UPointintconstraintdf_UPointdefault'
20'
--用户积分
constraintck_UPasswordcheck(UPasswordlike'
______'
3.1.3创建主贴表
论坛Topic'
droptable论坛Topic
createtable论坛Topic
tidintconstraintpk_tidprimarykey,--主贴编号
tsidintnotnull,--主贴板块编号
tuidintnotnull,--主贴用户编号
treplycountintnotnull,--主贴回复次数
temotionchar(10)notnull,--主贴表情
TTopicvarchar(16)notnullCONSTRAINTck_ttcheck(TTopicnotlike'
%'
'
),--主贴标题
TContentstextnotnull,--主贴内容
TTimedatetimenotnulldefaultgetdate(),--发帖时间
TClickCountintnotnull,--点击次数
TLastClickTdatetimenotnull,
CONSTRAINT[CK_TLC]CHECK([TLastClickT]>
=TTime)--主贴最后点击时间
)3.1.4回复表建立
论坛Reply'
droptable论坛Reply
createtable论坛Reply
RIDintconstraintpk_RIDprimarykey,--回复编号
RTIDint,--回复帖子编号
RSIDint,--回复版块编号
RUIDint,--回复用户编号
REmotionchar(10),--回复表情
RTopicvarchar(20),--回帖主题
RContentstext,--回帖内容
RTimedatetimedefaultgetdate(),--回帖时间
RClickCountint,--回帖点击次数
)3.1.5版块信息表建立
论坛Section'
droptable论坛Section
createtable论坛Section
SIDintconstraintpk_SIDprimarykey,--版块编号
SNamechar(10),--版块名称
SMasterIDint,--版主编号
SStatementvarchar(80),--版块说明
SClickCountintconstraintdf_SClickCountdefault'
0'
-