网吧管理系统数据库课程设计
《数据库应用技术》课程网吧管理系统设计报告

《数据库应用技术》网吧管理系统设计文档一、概述互联网快速发展,人们对娱乐需求大大增加,人们愿意在娱乐方面花钱。
网吧提供一种聚在一起玩的氛围,是很多网民会去的公众娱乐场所。
要管理稍大一点的网吧,利用数据库系统管理网吧是最好不过的,既省时又方便操作和修改。
最重要的是可以通过数据分析市场供需,了解大众的需求,从而针对市场需求不断调整。
网吧对用户有更一步的了解,通过上机时间、下机时间和年龄段可以推出相应的活动。
在电脑方面通过型号可以快速定位了解布局不同的电脑装备,合理搭配将运营成本降低到最少。
二、概念模型设计三、逻辑模型设计1.表属性用户表:用户编号,用户姓名,年龄,身份证号码,联系方式,性别账单表:账单流水号,用户编号,电脑编号,上机时间,下机时间,单价,总价,开单员,备注电脑表:电脑编号,电脑品牌,使用状态,电脑情况维修表:维修号,电脑编号,维修时间,维修人员员工表:员工编号,姓名,职位,联系方式2.表结构数据类型表四、系统实现1.创建数据库MariaDB [(none)]> create database InternetCafe-> default character set utf8-> default collate utf8_general_ci;2.创建数据表(1)创建用户表MariaDB [InternetCafe]> create table User-> (-> UserNo char(8) Primary Key, //用户编号-> Name varchar(20) NOT NULL, //用户姓名-> Age smallint unsigned, //用户年龄-> IDCardNo char(18) UNIQUE, //用户身份证-> Sex ENUM('M','F') NOT NULL, //M代表男,F代表女-> Tel char(11) NOT NULL //用户联系方式-> );(2)创建员工表MariaDB [InternetCafe]> create table Worker-> (-> WorkerNo char(8) Primary Key, //员工编号-> WorkerName varchar(20) NOT NULL, //员工姓名-> Position varchar(10) NOT NULL, //职位-> Tel char(11) NOT NULL //员工联系方式-> );(3)创建电脑表MariaDB [internetcafe]> create table Computer-> (-> ComputerNo char(6) Primary Key, //电脑编号-> CType varchar(20) NOT NULL, //电脑类型-> CUsage ENUM('F','B') NOT NULL, //F代表闲,B代表忙-> CStatus ENUM('0','1') NOT NULL //0代表维修中,1代表正常-> );(4)创建维修表MariaDB [internetcafe]> create table Fix-> (-> FixNo char(8) Primary Key, //维修单号-> FCNo char(6) NOT NULL, //维修的电脑编号-> FixTime date, //维修时间-> FixWorker char(8) NOT NULL //维修员工编号-> );(5)创建账单表MariaDB [internetcafe]> create table Pay-> (-> PayNo char(14) Primary Key, //账单流水号-> Userid char(8) NOT NULL, //用户编号-> Computerid char(6) NOT NULL, //使用的电脑编号-> Begin datetime NOT NULL, //上机时间-> End datetime NOT NULL, //下机时间-> Unit decimal(2,1) NOT NULL, //单价-> Total decimal(4,1) NOT NULL, //总金额-> Workid char(8) NOT NULL, //开单员(员工编号)-> Remark varchar(50) //备注-> );3.向账单表,维修表添加外键MariaDB [internetcafe]> alter table Fix add constraint fk_FCNo -> FOREIGN KEY(FCNo) references Computer(ComputerNo); MariaDB [internetcafe]> alter table Fix add constraint fk_FixWorker -> FOREIGN KEY(FixWorker) references Worker(WorkerNo); MariaDB [internetcafe]> alter table Pay add constraint fk_Userid -> FOREIGN KEY(Userid) references User(UserNo);MariaDB [internetcafe]> alter table Pay add constraint fk_Computerid -> FOREIGN KEY(Computerid) references Computer(ComputerNo); MariaDB [internetcafe]> alter table Pay add constraint fk_Workid -> FOREIGN KEY(Workid) references Worker(WorkerNo);4.实现功能(1) 查询消费总金额最多的用户的名字及金额select Name,sum(Total) from user inner join Pay on erNo=erid group by order by sum(Total) desc limit 0,1;(2) 查询并统计各电脑品牌故障的次数select Ctype,count(Ctype) from Fix inner join Computer on Fix.FCNo=puterNo group by Computer.Ctype;(3) 查询年龄在30岁以上用户的消费记录(只输出上机时间,下机时间,单价,总价,年龄)select Begin,End,Unit,Total,Age from Pay inner join User on erNo=erid where Age>30;(4) 查询并输出网管开单的次数及总金额select WorkerName,count(PayNo),sum(Total) from Pay inner join Worker on Pay.Workid=Worker.WorkerNo group by WorkerName;(5) 查询男用户与女用户的消费总金额select Sex as '性别',sum(Total) as '总计' from Pay inner join User on erid=erNo group by Sex;(6) 将“unit”(单价)和“total”(总价)字段的数据类型分别修改整数部分可显示两位和三位,小数点继续保留一位。
网吧的电脑的数据库设计示例

实验八:数据库课程设计实验目的:综合运用各章的知识,完成小型数据库系统底层的全面设计,初步掌握数据库系统开发的基本方法。
实验内容:1、需求分析,画出E-R图(实验前完成)。
2、将ER图转换为关系(实验前完成)。
3、建立数据库表,设置实体完整性、域完整性和参照完整性。
4、建立视图。
小组实验人员名单:实验步骤:课程设计题目: 网吧电脑管理系统内容:建立某中小型网吧系统的数据库。
1. 基本需求分析1)组织结构对组织结构的分析有助于分析业务范围与业务流程。
书店的组织结构如图1所示。
其中,一个管理员通过登陆网吧计费系统,首先记录用户信息,当用户下机时收取费用,当顾客办理会员时,收取会员卡费用,当然,还涉及到对计算机的管理。
2)功能分析本系统主要包含以下功能1) 系统管理:主要用来设置本网吧的基本信息,例如:网吧的费率设置,计费时段设置,网吧管理员设置,客户端主机设置,以及附加销售的商品设置等。
2) 会员管理:包括新会员添加、会员资料修改、会员帐户充值、会员帐户删除等功能。
3) 查询管理:包括会员对上机帐单查询、账号余额查询、充值明细查询,管理员对计算机使用状态、区域查询和故障情况查询、对登陆用户情况的查询,对商品进售情况查询等3)处理的数据上面的分析将本系统的功能归纳为3项。
在功能分析的基础上,应该画出系统的数据流图。
整个系统的分层数据流图将揭示一个系统内全部的数据项、数据结构、数据存储以及对数据的加工处理功能。
在此基础上就可以建立系统的数据字典。
本实验不讨论数据流图和完整的数据字典规范等内容,仅对最后建立数据库所需要的数据进行分析说明。
在上述3项功能中涉及到的数据包括:会员数据、上机数据、下机数据、收费数据等。
因此,将所有数据进行归类分析,网吧电脑管理系统要处理的数据应该包括:会员信息(会员编号,会员密码,姓名,身份证号,账户余额);上机记录信息(用户编号,用户类型,计算机编号,上机时间,已上网时间,消费金额,账户余额,时段价格,管理员编号);计算机信息(计算机编号,使用状态,登陆用户,管理员编号,登陆时间,每小时费用);管理员信息(管理员编号,管理员密码,姓名,身份证号,联系方式,工作时间,所管理计算机);充值信息(管理员,会员编号,充值金额,充值时间,优惠);商品信息(管理员,商品名,进价,进货日期,数量,进货总额,售出数量,售价,剩余数量,销售总额);计费信息(时间段,计算机类型,费率);故障处理信息:(计算机编号,故障类型,故障时间,管理员编号,维修价格);这些就是网吧电脑管理系统要处理的各种对象,每一种对象由括号内的属性组合在一起来描述。
数据库课程设计网吧管理系统

说明:此表一式四份,学生、指导教师、教研室、系部各一份。
可加附页。
2008年 7 月 4目录第一章概述 (2)第二章问题定义 (2)第三章需求分析.................................................... 错误!未定义书签。
第四章数据库设计.. (4)第五章界面设计 (6)第六章代码 ............................................................ 错误!未定义书签。
第一章概述随着上个世纪九十年代计算机网络的高速发展,人类进入到了网络化、信息化的时代.而网络的发展带动了一种新兴产业——网吧行业.从上世纪九十年代至今,网吧经历了前所未有的发展.从小规模到大规模,从单一经营到连锁经营,从简单提供上网服务演变到休息、娱乐场所。
这就带来了新的问题——网吧管理.目前,网吧的人工管理已经不能适应网吧的高速发展,成为阻碍网吧发展的桎梏。
因此开发一套完善的网吧管理系统成为网吧发展的首要任务.本系统主要负责服务器子系统的设计。
采用功能强大的Visual Basic6.0作为开发工具,Microsoft Access作为数据库平台。
本系统采用C/S结构。
它将一个应用系统分成两大部分,由多台计算机分别执行,协同完成整个系统的应用,从而达到系统中软、硬件资源最大限度的利用.因此,对于一个相对专用、独立的系统,它是-个较好的系统建立方法。
因此,本设计采用这一模式。
本系统从操作简便、界面友好、灵活、实用、安全的要求出发,实现较为简单。
本系统设计功能较为齐全,适合于中小型网吧的管理。
第二章问题定义网吧管理人员:系统的录入人员,主要指管理各种档案的工作人员,需要通过密码才能进入.他们拥有对系统数据的录入、修改、查询、删除等操作权限。
但不可以更改系统密码。
上机人员:权限最低的登入人员,当上网时间到了之后就会被提示。
第三章需求分析一、主要功能: 完成网吧管理人员对上机人员的调整,对机器的分配,以及纪录用户的上机时间,并对整个网吧的系统进行管理.因此,本系统应该主要完成和实现如下功能:初始化系统数据;录入登陆人员的基本信息数据;上机时间,下机时间的基本设定;查询机器的剩余时间;计算上机的费用;人员信息:在该项内容中将包括的数据库项有用户名,用户密码,密码确认,开户时间,开户金额,开户总机时,剩余时间,上机次数,备注。
网吧管理系统课程设计报告

5、电脑信息管理:管理员能添加、删除、修改、查询电脑配置信息。
管理员通过填写用户名和密码进行登陆,如果用户名或密码错误或为空,系统会给出相应的提示信息,操作员可以重新填写密码信息。进入系统后,管理员通过导航选择要进行管理或者查询的模块。电脑信息管理:管理员进入电脑信息管理界面中,可以选择查询计算机信息以及管理现有的计算机信息。查询计算机包括计算机名、显示器、内存、CPU、计算机编号等计算机相关信息,在提交之后,系统会给出相应的提示信息。选择修改是对现有计算机信息进行修改的操作,在提交修改信息之后,系统会给出相应的提示信息。在电脑信息管理页面中也可以输入计算机名进行计算机的查询操作。在用户信息管理界面中,管理员通过填写用户名、密码、性别等用户的一些相关信息进行用户信息的登记,在提交之后,如果系统需要的信息为空,系统会给出相应的错误提示信息。管理员可以对会员进行查询、修改、删除操作。计费信息管理:该模块是对网吧收费情况进行管理。在计费管理界面中,管理员输入用户身份证,即可调用数据库中的上下机时间,并结算花费金额、余额,存入数据库。
3、指明几个处理和(或)数据媒体之间的数据流的流线符号;
4、便于读、写数据流程图的特殊符号。
在处理符号的前后都应是数据符号。数据流程图以数据符号开始和结束(除9.4规定的特殊符号外)
数据流图有两种典型结构,一是变换型结构,它所描述的工作可表示为输入、主处理和输出,呈线性状态。另一种是事务型结构,这种数据流图呈束状,即一束数据流平行流入或流出,可能同时有几个事务要求处理。
通过市场调查分析,与探讨查阅资料将此系统更加完善。
由于本项目具有经济可行性,技术可行性及操作的可行性,本团队的网站建设管理系统的项目是可行的。
网吧数据库课程设计

网吧数据库课程设计一、教学目标本课程旨在通过学习网吧数据库的相关知识,让学生掌握数据库的基本概念、设计和应用。
具体目标如下:1.知识目标:学生能理解数据库的基本概念,如数据、数据库、表、查询等;了解数据库的设计原则和方法;掌握数据库的基本操作和应用。
2.技能目标:学生能使用数据库管理系统进行数据库的设计、创建、操作和维护;能编写简单的SQL查询语句,进行数据的增、删、改、查等操作。
3.情感态度价值观目标:培养学生对数据库技术的兴趣和好奇心,提高学生运用数据库技术解决实际问题的能力,培养学生的创新精神和团队合作意识。
二、教学内容本课程的教学内容主要包括以下几个部分:1.数据库的基本概念:数据、数据库、表、查询等。
2.数据库的设计:设计原则、设计方法、实体-关系模型等。
3.数据库的操作:创建、修改、删除数据库和表;数据的增、删、改、查等操作。
4.SQL查询语句:SELECT、INSERT、UPDATE、DELETE等语句的编写和应用。
5.数据库的应用:数据库在实际项目中的应用和案例分析。
三、教学方法为了提高教学效果,我们将采用多种教学方法相结合的方式进行教学:1.讲授法:通过讲解和演示,使学生掌握数据库的基本概念和操作方法。
2.案例分析法:通过分析实际案例,使学生了解数据库在实际项目中的应用。
3.实验法:通过上机实验,让学生亲手操作数据库,加深对数据库的理解和掌握。
4.小组讨论法:通过小组讨论,培养学生的团队合作意识和创新精神。
四、教学资源为了支持教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:《数据库原理与应用》。
2.参考书:《SQL Server数据库管理与应用》、《Oracle数据库管理与应用》等。
3.多媒体资料:教学PPT、视频教程、在线案例等。
4.实验设备:计算机、数据库管理系统软件、网络设备等。
5.在线资源:课程、论坛、在线问答等。
五、教学评估为了全面、客观地评估学生的学习成果,我们将采用以下评估方式:1.平时表现:通过观察学生在课堂上的参与程度、提问回答等情况,评估学生的学习态度和理解程度。
C语言课程设计(网吧管理系统)精选全文

3.设计结果与分析在VC++ 6.0环境中输入源程序,在没有提示错误的情况下编译,可以正常运行系统,实现网吧管理.如图2所示界面图3 程序主界面①执行文件时,会看到如图3所示界面。
运行主函数的时候,首先调用函数ID *creat() ,该函数是一个菜单函数,用scanf语句来实现各功能模块的输入执行。
根据网吧管理员实际情况的选择数据,分别调用其他自定义函数。
②在输入1按回车后会系统提示输入会员姓名、身份证号码,网吧管理员要把会员的信息进行输入。
如图4所示。
图4.输入会员上机信息界面该界面是调用函数ID *creat() 的结果,在ID *creat() 函数中,首先printf姓名用scanf函数接收会员上机信息.最后#结束该函数.回到主函数.在输入2按回车后系统会显示所有上机人员的信息。
其中包括临时上机人员和会员,如图5所示。
图5 输入所有上机人员信息结果界面该界面是调用函数ID *creat()的结果,在ID *creat() 函数中,首先printf姓名用scanf 函数接收会员上机信息.最后#结束该函数.回到主函数.④再输入3按回车后,输入你要查询的会员名系统会出现该会员的相关信息例如输入a按回车结果如图6所示。
图6 显示所查找会员信息界面该界面是调用ID *search(ID *head)的结果,scanf函数输入要查询的会员名,这里用到while,if语句.当符合输入的信息条件时,系统就会执行输出会员信息,若不符合则输入另一条指令.即"未找到符合记录!"按#回到主界面⑤再输入4按回车后,显示临时上机人员需要登记的信息.即填临时上机人员的姓名,身份证号码结果如图7所示。
图7 临时人员上机操作信息界面该界面调用ID *insert(ID *head) 函数记录新增临时上机人员信息,用到if条件语句,和while语句,当临时上机人员符合要求时,会显示临时上机登陆成功的字样.若不成功则直接跳过.根据管理人员得选择数据,调用其他函数.按#回车会到主界面⑥再输入5按回车后,显示临时下机人员的信息.输入下机人员的身份证号码结果 a.若输入正确的会员身份证号码如图8所示。
网吧管理系统数据库设计文档

网吧管理系统数据库设计报告版本历史目录1.文档介绍 (2)1.1文档目的 (2)1.2文档范围 (2)1.3读者对象 (2)1.4参考文献 (2)1.5术语与缩写解释 (3)2.数据库环境说明 (3)3.数据库的命名规则 (4)4.逻辑设计 (4)5.物理设计 (5)5.0 表汇总 (5)5.1管理员表:admin (5)5.2用户表:users. (5)5.3消费表:spends (6)5.4网吧表:netbar (7)5.5计算机表: computer (7)5.6管理表:adminbar (7)5.7字典表: dictionary (7)6.安全性设计 (9)6.1 防止用户直接操作数据库的方法 (9)8.数据库管理与维护说明 (9)1.文档介绍1.1文档目的网吧管理系统软件设计文档的重要组成部分,本文档主要对该软件后台数据库的概念模型设计和物理模型设计作出了统一的规定,同时还确定了每个表的数据结构。
它是开发人员重要参考依据。
1.2文档范围本文档包含以下几个部分:1.文档介绍2.数据库环境说明3.数据库的命名规则4.逻辑设计5.物理设计6.安全性设计7.优化8.数据库管理与维护说明1.3读者对象本文档的主要读者包括:1.本系统的设计人员:包括模块设计人员2.本系统的系统开发人员:包括数据库开发、编码人员3.本系统的测试人员1.4参考文献1.5术语与缩写解释2.数据库环境说明网吧管理系统数据库采用Micrsoft SQL Server 2005数据库管理系统建立并维护。
数据库设计过程中采用Micrsoft公司的Visio创建进销存数据库的ER图,并生成数据库脚本文件“网吧管理系统数据库设计.DDL”。
其中SQL Server2005身份验证,超级用户的用户名sa,密码均为123;SQL Server2005服务器的端口号:1433。
3.数据库的命名规则1.数据库的命名:全部由英文小写字母组成,表与字段之间使用下划线分割。
网吧数据库课课程设计

网吧数据库课课程设计一、教学目标本课程的学习目标包括知识目标、技能目标和情感态度价值观目标。
知识目标要求学生掌握网吧数据库的基本概念、设计和应用。
技能目标要求学生能够使用数据库管理系统进行数据库的创建、查询、更新和维护。
情感态度价值观目标要求学生理解数据库在实际生活中的应用,认识到数据库对于信息管理的重要性,并培养学生的信息素养和创新意识。
通过本课程的学习,学生将能够了解网吧数据库的基本原理,掌握数据库的设计和应用方法,提高信息管理和处理的效率。
同时,学生将培养良好的信息素养和创新意识,能够将数据库知识应用到实际生活中,为未来的学习和工作打下坚实的基础。
二、教学内容本课程的教学内容主要包括网吧数据库的基本概念、数据库的设计、数据库的管理和数据库的应用。
首先,学生将学习数据库的基本概念,包括数据库的定义、特点和分类。
然后,学生将学习数据库的设计,包括需求分析、概念设计、逻辑设计和物理设计。
接下来,学生将学习数据库的管理,包括数据库的创建、表的创建和修改、数据的查询和更新。
最后,学生将学习数据库的应用,包括数据库在网吧管理中的应用案例和实践项目。
三、教学方法为了激发学生的学习兴趣和主动性,本课程将采用多种教学方法。
首先,将采用讲授法,向学生传授数据库的基本概念和理论知识。
其次,将采用案例分析法,通过分析实际案例,让学生了解数据库在网吧管理中的应用。
同时,将采用讨论法,引导学生进行思考和交流,培养学生的创新思维。
最后,将采用实验法,让学生亲自动手进行数据库的设计和应用,提高学生的实际操作能力。
四、教学资源为了支持教学内容和教学方法的实施,本课程将选择和准备适当的教学资源。
教材方面,将选择权威、实用的数据库教材,为学生提供全面、系统的知识学习。
参考书方面,将推荐一些经典的 database 书籍,供学生深入学习和参考。
多媒体资料方面,将制作精美的教学PPT,通过图文并茂的方式,生动展示数据库的知识点和案例。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
大型数据库课程设计设计报告题目:网吧管理系统数据库学号:学生姓名: 指导教师:提交时间: 2013-11-23第1章需求分析1.1需求分析任务1.2 需求分析过程1.3 数据字典和流程图1.4 系统功能分析第2章概念结构设计2.1 概念结构设计的方法与步骤2.2 数据抽象与局部视图设计2.3 视图的集成第3章逻辑结构设计3.1 E-R图向关系模型的转换3.2 数据模型的优化3.3 数据库的结构3.4 数据库关系图第4章数据库物理结构设计第5章数据库完整性设计5.1主键及唯一性索引5.2 参照完整性设计5.3Check约束5.5 触发器设计第6章数据库视图设计第7章数据库存储过程设计第8章权限设计总结参考文献第一章需求分析1.1 需求分析的任务调查网吧管理系统应用领域涉及的内容,对涉及到领域的各个应用的信息要求和操作要求进行详细分析,形成需求分析说明书。
最重要的是调查、收集信息、分析用户信息和上网流程。
处理要求、数据的安全性与完整性要求。
1.2 需求分析的过程网吧管理人员为方便用户,需开发一个网吧管理系统。
为便于用户安全,快速的上网,网吧把用户信息,包括姓名、身份证号、卡号、上机时间、通过此次数据库的课程设计,进一步将理论与实际相结合,增强了对数据库方面应用的理解,对自己今后参与开发数据库系统积累了不少经验,在实验过程中,从建立数据开始,对灵据库设计理念及思想上有更高的认识,从需求分析,到概念设计和逻辑设计,E-R图的表示,数据字典的创建,懂得了不少有关数据库开发过程中的知识,在实验中建表,及其关系模式,关系代数的建立及理解,能将SQL语言很好的运用,增强了自己在数据库中应用SQL语言的灵活性,其中包括,插入、删除、修改、查询,牵涉表和表之间的联系,主建与外键的定义,约束项的设置,使逻辑更严密,在学习过程中,我也能过上网查了不少资料,也看了一些别人设计的图书馆管理信息系统的设计报告,学以致用,自我创新,独立完成了这份自己的报告,从中在学到用,从用又到学,不断修改,系统更新。
虽然不能达到完善系统,但也做到了尽善尽美,加强理论学习对完善系统会有很多帮助,不管怎么说,对这次做的课程设计自己觉得还算满意。
下机时间、级别等信息,输入网吧管理系统的客户端程序,系统经过查询网吧内电脑信息数据服务器后,为用户安排电脑。
在用户运行电脑期间,系统自动为用户计时,并根据不同用户的不同级别给出相应的单价,提示用户该缴纳的费用。
同时系统还给每个电脑分配电脑的网管进行电脑的维护,方便用户上网。
1.3数据字典与流程图调查用户需求1.普通用户管理需求功能:为每个上网用户登记信息,分配账号,有效而且安全的管理用户的信息。
2.费用管理需求交费功能:交费,上机时间,下机时间3. 电脑管理需求管理查询功能:查询电脑编号,并且查看各个编号的电脑型号4. 网管管理需求查询功能:网管编号,网管姓名,分区号1.4系统功能分析在调查完了用户需求之后,就要开始分析用户需求。
在此,我们采用自顶向下的结构化分析方法。
首先,定义全局概念结构的框架,如图2.2所示。
图1.1网吧管理系统总框架图网吧管理系统用户信息系统电脑信息系统费用信息系统分区信息系统网管信息系统各子系统需要进一步细化。
旅客信息系统为例进一步细化,如图2.3所示。
用户信息系统统计人数查询用户信息图1.2用户信息系统细化以其中的查询用户信息功能为例进一步细化,如图2.4所示。
图1.3查询用户信息功能图1.4电脑信息系统细化图1.5费用信息系统细化图1.6分区信息系统细化图1.7网管信息系统细化将所有子系统全部细化。
将所有用户需求分析完毕之后,就要开始构造数据字典了。
经分析之后,本系统要用到五个基本表:用户信息表,电脑信息表,费用信息表,分区信息表,网管信息表。
数据结构定义如表2.1。
表1.8 数据结构定义第二章概念结构设计2.1 概念结构设计的方法与步骤2.1.1 概念结构设计的方法概念设计阶段我采用自底向上的方法,即自顶向下的进行需求分析,然后再自底向上的进行概念结构设计。
对已经细化到无法再分的阶段逐步集成在一起,最终合成一个全局概念模式。
2.1.2 概念结构设计的步骤第一步是进行局部视图的设计:由于高层的数据流图只能反映系统的概貌,而中层流图能较好的反映系统中各局部应用的子系统组成。
因此我们先逐一的设计分E-R图。
第二步是进行视图的集成:各子系统的E-R图设计好之后,下一步就是要将所有的分E-R图合成一个系统的总E-R图,一般有两个方式,多个分E-R图一次集成,另一种是一次集成两个分E-R图。
我想采用一次集成两个分E-R图的方式。
2.2 数据抽象与局部视图设计按照图2.2系统总框架图,设计实体属性图以及局部E-R图。
图2.1用户信息实体属性图图2.2费用实体属性图图2.3电脑实体属性图图2.4分区实体属性图图2.5网管实体属性图图2.6用户花费局部E-R图图2.7用户使用电脑局部E-R图图2.8电脑所属分区局部E-R图图2.9网管管理电脑局部E-R图2.3视图的集成经过逐步细化再进行每两个一集成初步形成一个E-R图,最后得到图3.4总体概念结构E-R图。
图2.10系统总体结构E-R图第三章逻辑结构设计3.1 E-R图向关系模型的转换将图3.10总体概念结构E-R图转化成关系模型。
用户信息表(卡号,身份证号,用户名)电脑信息表(电脑编号,电脑名称,单价)费用信息表(卡号,电脑编号,上机时间,下机时间)分区信息表(分区号,电脑编号,分区名称)网管信息表(网管编号,分区号,网管姓名)3.2 数据模型的优化将转化的关系模式进行优化,最终达到第三范式。
1、确定数据依赖用户信息表(卡号,身份证号,用户名)根据这个关系写出数据依赖卡号→用户名,卡号→身份证号电脑信息表(电脑编号,电脑名称,单价)电脑编号→电脑名称,电脑编号→单价费用信息表(卡号,电脑编号,上机时间,下机时间)(卡号,电脑编号)→上机时间,(卡号,电脑编号)→下机时间分区信息表(分区号,电脑编号,分区名称)分区号→电脑编号,分区号→分区名称,网管信息表(网管编号,分区号,网管姓名)网管编号→分区号,网管编号→网管姓名2、对各关系模式间数据依赖进行极小化处理,消除冗余卡号→用户名,卡号→身份证号,电脑编号→电脑名称电脑编号→单价,(卡号,电脑编号)→上机时间,(卡号,电脑编号)→下机时间分区号→电脑编号,分区号→分区名称,网管编号→分区号,网管编号→网管姓名3、看这些模式是否符合要求,确定是否要对某些模式进行合并或者分解最终分解成第三范式:(卡号,用户名,身份证号)(电脑编号,电脑名称,单价)(分区号,电脑编号,分区名称)(网管编号,分区号,网管姓名)(卡号,电脑编号,上机时间,下机时间)3.3 数据库的结构根据总体结构图设计各表的结构,其相应标的定义如下:表3.1用户信息系统的结构表3.2 电脑信息系统的结构表3.3 费用信息表系统的结构表3.4分区信息表系统的结构表3.5网管信息表系统结构3.4 数据库关系图:第四章数据库物理设计4.1实现该设计的环境为Windows XP Professional + MS SQL Server 2005 或以上版本。
1、建立网吧管理系统数据库:CREATE DATABASE [网吧管理系统] ON PRIMARY(NAME= N'网吧管理系统',FILENAME= N'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\网吧管理系统.mdf',SIZE= 3072KB ,MAXSIZE= UNLIMITED,FILEGROWTH= 1024KB )LOG ON(NAME= N'网吧管理系统_log',FILENAME= N'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\网吧管理系统_log.ldf',SIZE=1024KB ,MAXSIZE =2048GB,FILEGROWTH=10%)2、建立管理员信息表:CREATE TABLE [dbo].[admin]([Manager number] [varchar](10)COLLATE Chinese_PRC_CI_AS NOT NULL, [Area number] [varbinary](16)NOT NULL,[Manager name] [varchar](20)COLLATE Chinese_PRC_CI_AS NOT NULL, CONSTRAINT [PK_admin] PRIMARY KEY CLUSTERED([Manager number] ASC)WITH(IGNORE_DUP_KEY =OFF)ON [PRIMARY])ON [PRIMARY]3、建立电脑信息表:CREATE TABLE [dbo].[computer]([Computer number] [varchar](8)COLLATE Chinese_PRC_CI_AS NOT NULL, [Computer name] [varchar](30)COLLATE Chinese_PRC_CI_AS NOT NULL, [price] [money] NOT NULL,CONSTRAINT [PK_computer] PRIMARY KEY CLUSTERED([Computer number] ASC)WITH(IGNORE_DUP_KEY =OFF)ON [PRIMARY])ON [PRIMARY]4、建立消费表:CREATE TABLE [dbo].[expence]([Card number] [char](16)COLLATE Chinese_PRC_CI_AS NOT NULL, [Computer number] [varchar](12)COLLATE Chinese_PRC_CI_AS NOT NULL, [[start time] [datetime] NOT NULL,[end time] [datetime] NOT NULL,CONSTRAINT [PK_expence] PRIMARY KEY CLUSTERED([Card number] ASC)WITH(IGNORE_DUP_KEY =OFF)ON [PRIMARY])ON [PRIMARY]5、建立分区表:CREATE TABLE [dbo].[fenqu]([Area number] [varchar](8)COLLATE Chinese_PRC_CI_AS NOT NULL, [Computer number] [varchar](16)COLLATE Chinese_PRC_CI_AS NOT NULL, [Area name] [varchar](50)COLLATE Chinese_PRC_CI_AS NOT NULL, CONSTRAINT [PK_member] PRIMARY KEY CLUSTERED([Area number] ASC)WITH(IGNORE_DUP_KEY =OFF)ON [PRIMARY])ON [PRIMARY]6. 建立用户表:CREATE TABLE [dbo].[USER]([Card number] [varchar](10)COLLATE Chinese_PRC_CI_AS NOT NULL,[User name] [varchar](20)COLLATE Chinese_PRC_CI_AS NOT NULL,[User number] [varbinary](30)NOT NULL,CONSTRAINT [PK_USER] PRIMARY KEY CLUSTERED([Card number] ASC)WITH(IGNORE_DUP_KEY =OFF)ON [PRIMARY])ON[PRIMARY]第五章数据库完整性设计6.1 主键及唯一性索引5.2参照完整性设计1、分区信息表中将属性电脑号设计为外键alter table fenqu add foreign key ([Computer number]) references computer ([Computer number])2、网管信息表中将属性分区号设计为外键alter table admin add foreign key (Area number) references fenqu (Area number)5.3 Check约束用户信息表中将卡号进行check约束:check ([Card number]< 90)因为现今网吧只有90台电脑,。