数据库设计文档样本.docx
《数据库设计文档样本.docx》由会员分享,可在线阅读,更多相关《数据库设计文档样本.docx(14页珍藏版)》请在冰豆网上搜索。
![数据库设计文档样本.docx](https://file1.bdocx.com/fileroot1/2022-12/16/545a47f7-4fca-433a-b41a-d25c27a22ca6/545a47f7-4fca-433a-b41a-d25c27a22ca61.gif)
数据库设计文档样本
1.需求分析
1.1需求描述
1.作品展示主要对外展示作品,匿名用户将自己的作品上传至该网,后台管理员就可以接受到这一作品信息,然后管理员择优根据作品的优秀程度选择是否将其展示至该页面.
2.作品投票主要是对外进行投票,只要是匿名用户,根据自己本身的ip作为通行证标准,即可以拥有投票资格,一个ip只能投一次票.并且系统自动统计作品的满意度.
3.作品上传主要是通过作品上传页面,用户将自己满意的作品进行上传到服务器,管理员进行审核的一个过程,该过程中,用户可以多次将作品上传.
4.论坛交流,本论坛主要是使用了两种用户,一种则是匿名用户,一种则是已在网注册的注册用户,匿名用户的权限就只能通过自己对这些帖子进行浏览没有发布和回帖的权限,在网注册用户,则可以根据论坛的规则进行发帖和回帖,并且在网注册用户不定期的可以收到管理员发出的请求用户补充自己注册信息的E-mail.
1.2功能需求
本系统包括作品展示,论坛交流,作品投票,作品上传等四个大部分.主要以作品展示为重点.
2.概念结构设计
2.1局部E-R图的设计
1)论坛帖子管理E-R图
根帖E-R图
回复贴实体E-R图
版面实体E-R图
3.逻辑结构设计
根据E-R图中的实体及实体之间的联系,关系模式如下:
●图片展示信息(编号,标题,作者,来源,图片,时间,创意内容)
●手绘信息展示(编号,标题,内容,作者,编辑者,来源,时间,置顶,作品图像)
●通知信息(编号,标题,内容,作者,编辑者,来源,时间)
●作品上传(编号,标题,图片路径,作者,类型,QQ,评价,时间)
●用户信息(编号,用户名,密码,密码提示问题,密码提示答案,用户名昵称,用户头像)
●投票—信息(编号,投票编号,投票IP,时间)
●投票—统计(编号,投票编号,投票名,投票总和,作者)
●论坛帖子—类别(编号,作品类别)
●论坛帖子表(编号,标题,时间,作者,回复数)
●论坛帖子表—跟帖(编号,帖子编号,类别,编号,标题,内容,时间,开帖人,跟帖数)
4.数据库实施
4.1关系表
将前面得到的关系模式转换为SQLServer2000支持的具体关系表如下:
Tb_logoimg(logo展示表)
字段名
字段类型
字段宽度
是否为空
说明
Id
decimal
18,0
NotNull
编号
Title
Varchar
50
Null
标题
Author
Varchar
50
Null
作者
Source
Varchar
50
Null
来源
Img
Varchar
200
Null
图片
Date
Datetime
Null
时间
chuangyi
varchar
Max
Null
创意内容
Tb_no1(手绘表)
字段名
字段类型
字段宽度
是否为空
说明
Id
decimal
18,0
NotNull
编号
Title
Varchar
50
Null
标题
Contents
Varchar
Max
Null
内容
Author
Varchar
30
Null
作者
Editer
Varchar
20
Null
编辑者
Source
Varchar
100
Null
来源
Dates
Datetime
Null
时间
istop
int
Null
置顶
User_picture
Varchar
100
Null
作品图像
Tb_tongzhi(最新通知表)
字段名
字段类型
字段宽度
是否为空
说明
Id
decimal
18,0
NotNull
编号
Title
Varchar
50
Null
标题
Contents
Varchar
Max
Null
内容
Author
varchar
30
Null
作者
Editer
varchar
20
Null
编辑者
Source
varchar
100
Null
来源
dates
datetime
Null
时间
Tb_upload(作品上传表)
字段名
字段类型
字段宽度
是否为空
说明
Id
decimal
18,0
NotNull
编号
Worktitle
Varchar
50
Null
标题
Imgaway
Varchar
100
Null
图片路径
Author
Varchar
50
Null
作者
Worktype
Varchar
50
Null
类型
Qq
Varchar
15
Null
QQ
Present
Varchar
Max
Null
评价
date
Datetime
Null
时间
Tb_userlogin(管理员表)
字段名
字段类型
字段宽度
是否为空
说明
Id
Decimal
18,0
NotNull
编号
Userid
varchar
20
Null
用户名
userpwd
varchar
20
Null
用户密码
Tb_forum_user(用户信息表)
字段名
字段类型
字段宽度
是否为空
说明
Id
decimal
18,0
Notnull
编号
Users
Varchar
50
Null
用户名
Psd
Varchar
20
Null
密码
Psd_tswt
Varchar
20
Null
密码提示问题
Psd_tswtda
Varchar
50
Null
密码提示答案
Users_nc
Varchar
20
Null
用户名昵称
User_picture
Varchar
100
Null
用户头像
ipVotes(投票信息表)
字段名
字段类型
字段宽度
是否为空
说明
id
Int
NotNull
编号
itemid
Varchar
50
Null
投票编号
itemips
Varchar
50
Null
投票ip
votedates
datetime
Null
时间
Voteitems(投票统计表)
字段名
字段类型
字段宽度
是否为空
说明
Id
Int
NotNull
编号
Itemid
Varchar
50
Null
投票编号
Itemname
Varchar
50
Null
投票名
Itemcount
Int
Null
投票总和
author
varchar
50
Null
作者
Tb_forum_style(论坛帖子类别)
字段名
字段类型
字段宽度
是否为空
说明
Id
Decimal
18,0
Notnull
编号
Forum_style
varchar
50
Null
作品类别
Tb_forums(论坛帖子表)
字段名
字段类型
字段宽度
是否为空
说明
Id
Decimal
18,0
NotNull
编号
Title
varchar
100
Null
标题
Dates
datetime
Null
时间
Authored
varchar
50
Null
作者
Hf_nums
Int
Null
回复数
sfhf
Int
Null
Tb_sub_forums(论坛帖子表)
字段名
字段类型
字段宽度
是否为空
说明
Id
Decimal
18,0
NotNull
编号
Forumid
Decimal
18,0
Null
帖子编号
Styleid
Decimal
18,0
Null
类别编号
Title
varchar
50
Null
标题
Contents
varchar
Max
Null
内容
Dates
datetime
Null
时间
Authored
Int
Null
开帖人
First_forum
int
Null
跟帖数
4.2数据库实施代码
4.2.1创建数据库
建库:
CREATEDATABASE[8Moon]ONPRIMARY
(NAME=N'MyDatas',FILENAME=N'D:
\数据库\8Moon.mdf',SIZE=3072KB,MAXSIZE=UNLIMITED,FILEGROWTH=1024KB)
LOGON
(NAME=N'MyDatas_log',FILENAME=N'D:
\数据库\8Moon_log.ldf',SIZE=1024KB,MAXSIZE=2048GB,FILEGROWTH=10%)
GO
EXECdbo.sp_dbcmptlevel@dbname=N'8Moon',@new_cmptlevel=90
GO
Tb_logoimg(logo展示表)
USE8Moon
GO
CREATETABLE[dbo].[tb_logoimg](
[id][decimal](18,0)NOTNULL,
[title][varchar](50)NULL,
[author][varchar](50)NULL,
[source][varchar](50)NULL,
[img][varchar](200)NULL,
[date][datetime]NULL,
[chuangyi][varchar](max)NULL
)ON[PRIMARY]
GO
Tb_no1(手绘表)
USE8Moon
GO
CREATETABLE[dbo].[tb_no1](
[id][decimal](18,0)NOTNULL,
[title][varchar](50)NULL,
[contents][varchar](max)NULL,
[author][varchar](30)NULL,
[editer][varchar](20)NULL,
[source][varchar](100)NULL,
[dates][datetime]NULL,
[istop][int]NULL,
[user_picture][varchar](100)NULL
)ON[PRIMARY]
GO
Tb_tongzhi(最新通知表)
USE[8Moon]
GO
CREATETABLE[dbo].[tb_tongzhi](
[id][decimal](18,0)NOTNULL,
[title][varchar](50)NULL,
[contents][varchar](max)NULL,
[author][varchar](30)NULL,
[editer][varchar](20)NULL,
[source][varchar](100)NULL,
[dates][datetime]NULL
)ON[PRIMARY]
GO
Tb_upload(作品上传表)
USE[8Moon]
GO
CREATETABLE[dbo].[tb_upload](
[id][decimal](18,0)IDENTITY(1,1)NOTNULL,
[worktitle][varchar](50)NULL,
[imgway][varchar](100)NULL,
[author][varchar](50)NULL,
[worktype][varchar](50)NULL,
[qq][varchar](15)NULL,
[present][varchar](max)NULL,
[date][datetime]NULL
)ON[PRIMARY]
GO
Tb_userlogin(管理员表)
USE[8Moon]
GO
CREATETABLE[dbo].[tb_userlogin](
[id][decimal](18,0)NOTNULL,
[userid][varchar](20)NULL,
[userpwd][varchar](20)NULL
)ON[PRIMARY]
GO
Tb_forum_user(用户信息表)
USE[8Moon]
GO
CREATETABLE[dbo].[tb_forum_user](
[id][decimal](18,0)NOTNULL,
[users][varchar](50)NULL,
[psd][varchar](20)NULL,
[psd_tswt][varchar](20)NULL,
[psd_tswtda][varchar](50)NULL,
[users_nc][varchar](20)NULL,
[user_picture][varchar](100)NULL
)ON[PRIMARY]
GO
ipVotes(投票信息表)
USE[8Moon]
GO
CREATETABLE[dbo].[IpVotes](
[id][int]NOTNULL,
[ItemID][varchar](50)NULL,
[ItemIPs][varchar](50)NULL,
[VoteDates][datetime]NULL,
CONSTRAINT[PK_IpVotes]PRIMARYKEYCLUSTERED
(
[id]ASC
)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY]
)ON[PRIMARY]
GO
Voteitems(投票统计表)
USE[8Moon]
GO
CREATETABLE[dbo].[VoteItems](
[id][int]NOTNULL,
[ItemID][varchar](50)NULL,
[ItemName][varchar](50)NULL,
[ItemCount][int]NULL,
[author][varchar](50)NULL
)ON[PRIMARY]
GO
Tb_forum_style(论坛帖子类别)
USE[8Moon]
GO
CREATETABLE[dbo].[tb_forum_style](
[id][decimal](18,0)NULL,
[forum_style][varchar](50)NULL
)ON[PRIMARY]
GO
Tb_forums(论坛帖子表)
USE[8Moon]
GO
CREATETABLE[dbo].[tb_forums](
[id][decimal](18,0)NOTNULL,
[title][varchar](100)NULL,
[dates][datetime]NULL,
[authorid][varchar](50)NULL,
[hf_nums][int]NULL,
[sfhf][int]NULL
)ON[PRIMARY]
GO
Tb_sub_forums(论坛帖子表)
USE[8Moon]
GO
CREATETABLE[dbo].[tb_Sub_forums](
[id][decimal](18,0)NOTNULL,
[forumid][decimal](18,0)NULL,
[styleid][decimal](18,0)NULL,
[title][varchar](50)NULL,
[contents][varchar](max)NULL,
[dates][datetime]NULL,
[authorid][int]NULL,
[first_forum][int]NULL
)ON[PRIMARY]
GO
论坛视图
View_forum
SELECTdbo.tb_forums.id,
dbo.tb_forums.title,
dbo.tb_forum_style.forum_style,
dbo.tb_Sub_forums.contents,dbo.tb_forum_user.users,dbo.tb_Sub_forums.first_forum,
dbo.tb_forums.hf_nums,dbo.tb_forums.dates,dbo.tb_forum_user.users_nc
FROMdbo.tb_forum_userINNERJOIN
dbo.tb_forum_styleINNERJOIN
dbo.tb_Sub_forumsINNERJOIN
dbo.tb_forumsONdbo.tb_Sub_forums.forumid=dbo.tb_forums.idONdbo.tb_forum_style.id=dbo.tb_Sub_forums.styleidON
dbo.tb_forum_user.id=dbo.tb_Sub_forums.authorid
WHERE(dbo.tb_Sub_forums.first_forum=1)
View_SubForum
SELECTdbo.tb_Sub_forums.id,dbo.tb_Sub_forums.title,dbo.tb_Sub_forums.contents,dbo.tb_Sub_forums.dates,dbo.tb_forum_style.forum_style,dbo.tb_forum_user.users,
dbo.tb_forum_user.user_picture,dbo.tb_Sub_forums.first_forum,dbo.tb_Sub_forums.forumid,dbo.tb_forum_user.users_nc
FROMdbo.tb_forum_userINNERJOIN
dbo.tb_forum_styleINNERJOIN
dbo.tb_Sub_forumsONdbo.tb_forum_style.id=dbo.tb_Sub_forums.styleidONdbo.tb_forum_user.id=dbo.tb_Sub_forums.authorid