网吧管理系统.docx

上传人:b****9 文档编号:25408381 上传时间:2023-06-08 格式:DOCX 页数:14 大小:70.35KB
下载 相关 举报
网吧管理系统.docx_第1页
第1页 / 共14页
网吧管理系统.docx_第2页
第2页 / 共14页
网吧管理系统.docx_第3页
第3页 / 共14页
网吧管理系统.docx_第4页
第4页 / 共14页
网吧管理系统.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

网吧管理系统.docx

《网吧管理系统.docx》由会员分享,可在线阅读,更多相关《网吧管理系统.docx(14页珍藏版)》请在冰豆网上搜索。

网吧管理系统.docx

网吧管理系统

 

《数据库原理》课程大作业

数据库设计与应用开发

 

课题名称:

网吧管理系统数据库设计

学号:

101530508

姓名:

王随鹏

专业年级:

10软件工程(网络工程)2班

成绩:

 

内容与要求

1.结合网吧系统资料及自己的体会自行设计数据库,实现网吧的有效管理,具体功能应包括但不限于:

(1)网吧管理员可以添加不同类型的用户;

(2)用户可以查看个人信息及消费情况;

(3)用户可以在上网期间充钱,换机和退出;

(4)网吧管理员可以查看过去一段时间的消费情况;

(5)系统可以自行备份数据;

2.给出数据库设计各个阶段的详细设计报告,包括:

(1)需求分析

(2)概念结构设计

(3)逻辑结构设计

(4)物理结构设计与实施

3.写出应用系统的主要功能设计;

4.写出收获和体会,包括已解决和尚未解决的问题,进一步完善的设想和建议;

5.独自完成作业,有雷同的平分得分。

 

目录

1绪论1

2应用系统功能设计2

2.1业务操作流程2

2.2系统功能设计2

3数据库设计3

3.1需求分析3

3.2概念结构设计5

3.3逻辑结构设计6

3.4物理结构设计与实施6

4结束语12

4.1收获和体会12

4.2总结与展望12

 

1绪论

随着工业化发展的不断深入,计算机的发明与其软硬件的快速更新换代及Internet的高速发展,人类进入了网络化、信息化的时代。

信息时代的计算机在各行各业都开始扮演重要的角色,人们也越来越离不开计算机;网络化的21世纪也促使了一种新兴产业的蓬勃发展——网吧——它应运而生,并快速膨胀!

计算机世界的摩尔定律使它的性价比越来越高,这进一步加快了网吧规模的不断扩大,从小规模到大规模,从单一经营到连锁经营,提供的服务也越来越多样化!

但是,这些也带来了新的问题——网吧数据库系统越来越难以管理!

目前,网吧系统的人工管理任务量变得越来越大,已经不能适应网吧的高速发展,严重制约了网吧的成长壮大!

这时,开发一套完善的网吧管理系统就成了亟待解决的首要问题!

本系统采用MicrosoftSQLServer2005作为数据库平台,负责网吧管理系统的数据库设计。

 

2应用系统功能设计

2.1业务操作流程

本系统再现了网吧上网流程。

用户在网吧前台进行注册,根据不同的消费标准注册成不同的上网类型---普通用户和会员,注册完成就可以登录上网了,直到余额为零或是用户自己主动下机,这个过程中系统自行计算上网用户的消费情况并记录。

如图2-1-1所示

图2-1-1

2.2系统功能设计

本系统主要完成网吧管理人员对上机用户的数据添加,更新,删除,以及记录用户的消费信息,并对整个网吧数据库系统进行管理。

因此,本系统主要完成和实现如下功能:

如图2-2-1所示

1>初始化系统数据;

2>添加登录用户的基本信息;

3>查询用户的剩余时间;

4>计算用户的上机费用;

5>更新用户的信息;

6>备份数据

图2-2-1

3数据库设计

3.1需求分析

根据数据项的含义,我们将数据项的定义分为以下几个方面:

数据项名、类型、长度、附加说明。

主要数据项定义如表3-1-1至表3-1-5所示。

数据项名

类型

长度

说明

用户ID(usid)

字符型(char)

20

英文字母和数字的组合(主键)

用户密码(uspw)

字符型(char)

10

超过6位的英文字母与字符的组合

用户类别(type)

字符型(char)

4

会员或是普通用户

账号余额(balance)

货币型(money)

用户状态(ustate)

整型(int)

激活或是冻结状态

表3-1-1用户信息(users)

数据项名

类型

长度

说明

用户类别(type)

字符型(char)

4

会员或是普通用户(主键)

计费标准(criteria)

货币型(money)

表3-1-2消费标准(rules)

数据项名

类型

长度

说明

管理员ID(log)

字符型(char)

20

英文字母和数字的组合(主键)

管理员密码(uspw)

字符型(char)

10

超过6位的英文字母与字符的组合

用户ID(usid)

字符型(char)

20

会员或是普通用户

上班时间(begintime)

日期型(datetime)

形式:

2013-1-412:

00

下班时间(endtime)

日期型(datetime)

形式同上

表3-1-3管理员信息(admin)

数据项名

类型

长度

说明

电脑IP(IP)

字符型(char)

15

(主键)

用户ID(usid)

字符型(char)

20

英文字母和数字的组合

电脑状态(state)

字符型(char)

10

空闲或是占用状态

表3-1-4电脑信息(compt)

数据项名

类型

长度

说明

用户ID(usid)

字符型(char)

20

英文字母和数字的组合

电脑IP(IP)

字符型(char)

15

上机时间(intime)

日期型(datetime)

形式:

2013-1-412:

00

下线时间(outtime)

日期型(datetime)

形式同上

表3-1-5上网信息(surfnet)

3.2概念结构设计

根据对数据流图和数据字典的分析,可以确定本数据库中的实体、属性和实体之间的关系,并画出E-R图。

其中各实体间的联系如E-R图3-2-1所示,各实体的属性如图3-2-2所示。

E-R图3-2-1

E-R图3-2-2

3.3逻辑结构设计

由E-R图转换后的关系模式如下所示,其中primarykey(主键)用下划线标出

消费标准rules(type,criteria)

管理员信息admin(log,adpw,used,begintime,endtime)

用户信息users(usid,type,uspw,ustate,balance)

电脑信息compt(IP,usid,state)

上网信息surfnet(usid,IP,intime,outtime)

3.4物理结构设计与实施

3.4.1利用SQL语言创建系统数据库及各数据表,并定义好完整性约束

1>创建网吧数据库

createdatabasenetbar

2>创建消费标准表

createtablerules

typechar

(2)check(typein('0','1'))primarykey,

criteriamoney

3>创建用户信息表

createtableusers

usidchar(20)primarykey,

typechar

(2)

uspwchar(10)check(len(uspw)>6),

ustateintcheck(ustate=0orustate=1),

balancemoney,

foreignkey(type)referencesrules(type)

4>创建管理员信息表

createtableadmin

logchar(20)primarykey,

adpwchar(10),

usidchar(20),

begintimedatetime,

endtimedatetime,

foreignkey(usid)referencesusers(usid)

5>创建电脑信息表

createtablecompt

IPchar(15)primarykey,

usidchar(20),

statechar(10)check(statein('空闲','占用')),

foreignkey(usid)referencesusers(usid)

6>创建上网信息表

createtablesurfnet

usidchar(20),

IPchar(15),

intimedatetime,

outtimedatetime,

foreignkey(usid)referencesusers(usid)

ondeletecascade

onupdatecascade,

foreignkey(IP)referencescompt(IP)

ondeletecascade

onupdatecascade

3.4.2在数据表上定义触发器,以完成数据库

createTRIGGERout_netonsurfnetforupdate

as

DECLARE@s1char(20),@s2datetime,@s3datetime,@s4int,@s5money,@s6int

SELECT@s1=usid,@s2=intime,@s3=outtimeFROMdeleted

set@s4=

selectcount(*)fromsurfnet

set@s5=

(selectusers.balancefromusers,surfnet

whereusers.usid=surfnet.usid)

set@s6=

(selectusers.ustatefromusers,surfnet

whereusers.usid=surfnet.usid)

if(ustate=0)

begin

PRINT'您的账号未激活,请去服务台激活!

'

RollbackTRANSACTION

elseif((@s4>=200or@s4<0))

begin

PRINT'目前无空闲机器,请您耐心等待!

'

RollbackTRANSACTION

end

elseif(@s5<=0)

begin

PRINT'您的余额不足,请充值!

'

RollbackTRANSACTION

end

elseif(@@error<>0)

begin

RollbackTRANSACTION

end

else

begin

updateusers

setbalance=

(selectusers.balance-datediff(hour,intime,outtime)

fromusers,surfnet

whereusers.usid=surfnet.usid)

setustate=1

end

3.4.3列出各数据表之间的关系图

4结束语

4.1收获和体会

通过本次数据库设计,我基本明确了一个数据库系统从构思到设计,再到具体实践的一般步骤以及需要注意的地方。

这是一个对我一学期学习情况的一个明确放映,也是一个让我自学和运用知识的大好机会。

本次设计,从确定设计目标到设计出具体实施办法,都是我考虑良久才慢慢实现的,当然这之间还有同学的帮忙,他的帮忙解决了我很多难题,包括帮我审核错误以及帮我分析我的错漏之处,我很感激他。

我看到了自己的疏漏之处,我相信,下次再设计相关数据库系统,我一定会考虑的更全面,更完美,错误会更少。

4.2总结与展望

本系统经过了一些简单的测试,我也基本完成了我所期望的系统功能,但我知道,还有一些重要功能我还没实现。

一方面是我考虑的还不周全,另一方面主要是我没实现图形化操作界面。

主要也是因为我没有相应的窗体设计方面的知识,临时学习又不能达到我的目的,所以我的系统还很不成熟,只是个雏形!

但我相信,不久以后,我这个系统一定会更加完善,完整。

就目前看来,计算机的发展还是很快,相应的,网吧的规模还有很大的上升空间。

我的系统只实现了基本的功能,假若网吧的服务变得更多样的话,就变得很不适用,而目前网吧内的数据库系统必须添加新的功能才能避免被淘汰。

所以应该着眼未来,注重开拓,相信网吧系统会变得越来越庞大,功能更多样!

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

当前位置:首页 > 教学研究 > 教学反思汇报

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

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