机房管理系统数据库设计说明Word下载.docx

上传人:b****4 文档编号:14092673 上传时间:2022-10-18 格式:DOCX 页数:10 大小:119.06KB
下载 相关 举报
机房管理系统数据库设计说明Word下载.docx_第1页
第1页 / 共10页
机房管理系统数据库设计说明Word下载.docx_第2页
第2页 / 共10页
机房管理系统数据库设计说明Word下载.docx_第3页
第3页 / 共10页
机房管理系统数据库设计说明Word下载.docx_第4页
第4页 / 共10页
机房管理系统数据库设计说明Word下载.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

机房管理系统数据库设计说明Word下载.docx

《机房管理系统数据库设计说明Word下载.docx》由会员分享,可在线阅读,更多相关《机房管理系统数据库设计说明Word下载.docx(10页珍藏版)》请在冰豆网上搜索。

机房管理系统数据库设计说明Word下载.docx

2、创建表

2、创建存储过程和触发器

一、需求分析

针对一般高校机房管理系统的需求分析、通过对学生上机过程、教学班上机过程、注

册过程、充值过程、的容的数据流程分析一现设计如下数据项和数据结构

(1)机房基本信息:

包括机房号、机房名、计算机数目、管理人等

(2)计算机基本信息:

包括计算机IP地址、编号、机房号、品牌、备注等

(3)学生基本信息:

包括学号、、性名、行政班等

(4)用户基本信息:

包括用户名、学号、密码、余额等

(5)学生充值基本信息:

包括用户名、充值时间、金额、办理人等

(6)机房收费标准基本信息:

包括机房号、金额等

(7)学生上机过程登记基本信息:

包括计算机IP地址、日期、上机时间、下机时间、学号、

上机类型等

(8)机房费用统计基本信息:

包括计算机IP地址、日期、统计时间、费用等

 

2•数据流图

一-机总费期

room(机房表)

字段名

数据类型

能否为空

是否为主键

说明

rno

int

机房号

rname

char(10)

机房名

number

smallint

计算机数目

manager

管理人

computed计算7

机表)

IP

char(20)

计算机IP地址

eno

编号

brand

Char(20)

品牌

note

Varchar(IOO)

备注

Student(学生表)

是否作为主键

sno

Int

学号

sname

Char(10)

sex

Char

(2)

台匕冃匕

性别

class

行政班

Usertable(用户表)

uname

用户名

pword

密码

money

余额

Prepaid(充值表)

ptime

datetime

充值时间

pmoney

smallmoney

金额

trans

收费人员

Standard(收费标准表)

stime

时间段

smoney

金额/小时

Record(上机过程登记表)

begintime

上机时间

endtime

下机时间「

type

Char(15)

上机类型

statistik(机房费用统计表)

dates

日期

Sno

学号「

moneys

费用

图一机房实体E-R图

图二学生实体E-R图

2、全局E-R图

机房名I

5

机房

[1]

选择、

n

学生

/\

机器数目

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'

\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))

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'

2)数据测试selectsno学号,moneyswheresno=2011508092go

insertintoprepaidvalues('

bbb'

getdate(),5,'

go

selectsno学号,moneyswheresno=2011508092go

select*fromprepaid

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 工学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1