机房管理系统数据库设计说明.docx
- 文档编号:1173733
- 上传时间:2022-10-18
- 格式:DOCX
- 页数:10
- 大小:119.06KB
机房管理系统数据库设计说明.docx
《机房管理系统数据库设计说明.docx》由会员分享,可在线阅读,更多相关《机房管理系统数据库设计说明.docx(10页珍藏版)》请在冰豆网上搜索。
机房管理系统数据库设计说明
学院机房管理系统
数据库设计说明书
设计人:
学号:
班级:
学院:
一、需求分析
1.业务流程图
2.数据流图
3.数据字典
二、概念设计
1、实体属性图
2、全局E-R图
三、逻辑设计
1、表间关系图
2、关系模式
四、数据库实现
1、创建数据库
2、创建表
2、创建存储过程和触发器
一、需求分析
针对一般高校机房管理系统的需求分析、通过对学生上机过程、教学班上机过程、注
册过程、充值过程、的容的数据流程分析一现设计如下数据项和数据结构
(1)机房基本信息:
包括机房号、机房名、计算机数目、管理人等
(2)计算机基本信息:
包括计算机IP地址、编号、机房号、品牌、备注等
(3)学生基本信息:
包括学号、、性名、行政班等
(4)用户基本信息:
包括用户名、学号、密码、余额等
(5)学生充值基本信息:
包括用户名、充值时间、金额、办理人等
(6)机房收费标准基本信息:
包括机房号、金额等
(7)学生上机过程登记基本信息:
包括计算机IP地址、日期、上机时间、下机时间、学号、
上机类型等
(8)机房费用统计基本信息:
包括计算机IP地址、日期、统计时间、费用等
1.业务流程图
2•数据流图
表
一-机总费期
3.数据字典
room(机房表)
字段名
数据类型
能否为空
是否为主键
说明
rno
int
否
是
机房号
rname
char(10)
否
否
机房名
number
smallint
能
否
计算机数目
manager
char(10)
否
否
管理人
computed计算7
机表)
字段名
数据类型
能否为空
是否为主键
说明
IP
char(20)
否
是
计算机IP地址
eno
smallint
否
否
编号
rno
int
否
否
机房号
brand
Char(20)
能
否
品牌
note
Varchar(IOO)
能
否
备注
Student(学生表)
字段名
数据类型
能否为空
是否作为主键
说明
sno
Int
否
是
学号
sname
Char(10)
否
否
sex
Char
(2)
台匕冃匕
否
性别
class
Char(20)
台匕冃匕
否
行政班
Usertable(用户表)
字段名
数据类型
能否为空
是否作为主键
说明
uname
Char(20)
否
是
用户名
sno
int
否
否
学号
pword
Char(20)
否
否
密码
money
money
能
否
余额
Prepaid(充值表)
字段名
数据类型
能否为空
是否作为主键
说明
uname
Char(20)
否
是
用户名
ptime
datetime
否
是
充值时间
pmoney
smallmoney
否
否
金额
trans
Char(10)
否
否
收费人员
Standard(收费标准表)
字段名
数据类型
能否为空
是否作为主键
说明
rno
int
否
是
机房号
stime
Char(20)
否
是
时间段
smoney
smallmoney
否
否
金额/小时
Record(上机过程登记表)
字段名
数据类型
能否为空
是否作为主键
说明
IP
char(20)
否
是
计算机IP地址
begintime
datetime
否
是
上机时间
sno
Int
否
否
学号
endtime
datetime
能
否
下机时间「
type
Char(15)
否
否
上机类型
statistik(机房费用统计表)
字段名
数据类型
能否为空
是否作为主键
说明
IP
char(20)
否
是
计算机IP地址
dates
datetime
否
是
日期
Sno
int
否
否
学号「
moneys
smallmoney
否
否
费用
图一机房实体E-R图
图二学生实体E-R图
2、全局E-R图
机房名I
5
机房
[1]
选择、
n
学生
/\
性别
机器数目
机房号
管理人
机房号
编号
品牌
备注
1
n
计算机
计算机
属于
1
上机
1
1
1
属于
用户
用户名
学号
密码
余额
学号
行政班
姓名
三、逻辑设计
1、表间关系图
Pfgpa'J*._usertoble*
2、关系模式机房(机房号,机房名,机器数目,管理人)学生(学号,,性别,行政班)计算机(编号,机房号,品牌,备注)用户(用户名,学号,密码,余额)
四、数据库实现
1创建数据库
1、创建数据库
createdatabaseroom
on
(name='room_data',filename='E:
\room\data\room_data',size=5MB,maxsize=10MB,
filegrowth=1MB
)logon(
name='room_log',filename='E:
\room\log\room_log',size=5MB,
maxsize=10MB,filegrowth=1MB)
2、创建表
2、room(机房表)的创建createtableroom(
rnointnotnullprimarykey,rnamechar(10)notnull,numbersmallintnull,managerchar(10)notnull)
3、computer(计算机表)的创建createtablecomputer(
IPchar(20)notnullprimarykey,cnosmallintnotnull,rnointnotnull,brandchar(20)null,notevarchar(50)null)
4、student(学生表)的创建createtablestudent(
snointnotnullprimarykey,snamechar(10)notnull,sexchar
(2)null,classchar(20)notnull
6、User(用户表)的创建createtableusertable
(
unamechar(20)notnullprimarykey,snointnotnull,pwordchar(20)notnull,moneysmoneynull,
)
7、prepaid(充值表)的创建createtableprepaid
(
unamechar(20)notnull,ptimedatetimenotnull,pmoneysmallmoneynotnull,transchar(10)notnull,constraintp_primaryprimarykey(uname,ptime))
8、standard(收费标准表)的创建createtablestandard
(rnointnotnull,stimechar(20)notnull,smoneysmallmoneynotnull,constraintc_primaryprimarykey(rno,stime))
11、record(上机过程登记表)的创建createtablerecord
(
IPchar(20)notnull,snointnotnull,begintimedatetimenotnull,endtimedatetimenull,typechar(15)notnull,constraintt1primarykey(IP,begintime))
12、statistik(费用统计表)的创建createtablestatistik
(
IPchar(20)notnull,datesdatetimenotnull,snointnotnull,moneyssmallmoneynotnull,constraintt2primarykey(IP,dates))
2、创建存储过程和触发器
1、创建存储过程实现各机房上机费用的统计
1)代码createprocs_room(rnoint)as
selectrname机房名,sum(moneys)费用fromstatistikinnerjoincomputeroncomputer.IP=statistik.IPinnerjoinroomonroom.rno=computer.rnowhereroom.rno=rnogroupbyrname
2、创建触发器实现费用登记时,自动修改该生的账户余额。
1)代码
createtriggeru_moneyonstatistikforinsertas
updateusertable
setmoneys=moneys-(selectmoneysfrominserted)wheresno=(selectsnofrominserted)2)数据测试查询插入记录前学生的余额selectsno学号,moneys余额fromusertablewheresno=2011508092
执行插入操作insertintostatistikvalues('001',getdate(),101,2.5)查询插入记录学生的余额selectsno学号,moneys余额fromusertablewheresno=2011508092
3.创建触发器实现充值时自动修改该生余额
1)代码createtriggerun_moneyonprepaidforinsertasupdateusertablesetmoneys=moneys+(selectpmoneyfrominserted)whereuname=(selectunamefrominserted)
余额fromusertable
个vga')
余额fromusertable
2)数据测试selectsno学号,moneyswheresno=2011508092go
insertintoprepaidvalues('bbb',getdate(),5,'go
selectsno学号,moneyswheresno=2011508092go
select*fromprepaid
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 机房 管理 系统 数据库 设计 说明