1、经管学院数据库原理课程设计第一章 系统概述1.1项目开发背景和意义随着经济的发展和消费水平的提高,人们消费越来越多样化,这就使游泳馆对顾客资料信息的管理更加繁琐。为了避免固定客流的流失推出了会员卡制度。会员管理系统能更好、更准、更方便的对会员的相关信息进行管理,并且更有效的维护游泳馆信息。这样不但有助于游泳馆会员秩序的管理与发展和信息维护,并且有助于提高游泳馆在用户中的形象,进而提高其知名度和竞争力。会员管理系统相对于传统的管理而言具有查询方便、维护简易、精确性高等优点。计算机的使用能够大量节省人力、物力、财力,而且还可以大大提高会员资料的安全性和完整性。系统采用SQL2008作为数据库开发平
2、台,实现了管理员对会员信息的录入、更新和修改,并且可以按会员姓名、会员卡卡号查询会员的基本信息。1.2 系统实现技术1. 实验软件平台:Windows 8,PowerDesinger12.52. 数据库开发工具:Microsoft SQL 2008第二章 需求分析2.1 引言随着社会发展,计算机的广泛应用已成为社会发展的重要标志。这个社会是个信息高速发展的社会,他不仅体现在高科技上,而且体现在我们日常的生活中。根据软件工程学的要求,开发软件首先要做的且也是开发过程中最主要的就是系统的需求分析,他同时也是软就爱你生存周期中关键的一步。根据要求,对游泳池会员管理系统的全部功能和相关技术进行具体的分
3、析,分析时采用结构化的分析方法,自顶向下,逐步分解问题,下面就对游泳池会员管理系统进行系统分析,以确定软件的规模、应具有的功能提出的各项要求及所需要的硬件环境和软件支持,确定开发的软件与外界的接口。2.2需求分析阶段的目标和任务2.2.1处理对象会员、消费记录、操作员、存款、参数表2.2.2处理功能及要求游泳池会员管理系统可实现七个功能,分别为售卡管理、会员资料管理、存款管理、退卡管理、会员禁用、消费管理、系统管理。其模块图如图2.1所示。 图2.1模块图 售卡管理:销售会员卡时要输入卡号、金额、折扣、类型(储值卡、折扣卡)以及持卡人基本资料(姓名、电话、证件号等)等信息,这些信息记录到会员资
4、料中。会员资料管理:查询和修改会员资料(其中卡号和金额不能修改)。可按照卡号、持卡人姓名查询信息。存款管理:如果会员卡类别是储值卡,可根据卡号进行预存款操作。退卡管理:执行退卡操作后该卡不可再使用,但保留该卡以前的消费记录。 会员禁用:用来挂失或是停止会员卡的使用(记录禁用的原因),实现对会员卡的安全管理可以通过解禁功能恢复会员卡的正常使用。消费管理:记录会员的消费情况,可以查看会员的消费金额,存款金额、结存余额,可以查询任何一段时间内该卡的消费情况,也可以查询所有会员卡的汇总记录。 系统管理:包括参数设置、权限设置、更改密码等。2.3游泳馆会员管理系统数据流图2.3.1顶层数据流图图2.2顶
5、层数据流图2.3.2游泳池会员管理第一层数据流图图2.3会员管理第一层数据流图2.3.3游泳池会员管理第二层数据流图1) 售卡管理的数据流图图2.4售卡管理的数据流图2) 会员资料管理的数据流图图2.5会员资料管理的数据流图3) 存款管理的数据流图图2.6存款管理的数据流图4) 退卡管理的数据流图图2.7退款管理的数据流图5) 会员禁用的数据流图图2.8会员禁用的数据流图6) 消费管理的数据流图图2.9消费管理的数据流图7) 系统管理的数据流图图2.10系统管理的数据流图2.4游泳馆会员管理系统数据字典1.数据流的定义数据流名字:会员基本信息表数据流描述:会员办理会员卡时需要登记的一些基本信息
6、数据流来源:会员数据流去向:系统数据流组成:会员基本信息表=会员姓名+会员电话+会员证件号数据流量:10次/小时高峰流量:30次/小时数据流名字:办卡信息单数据流描述:会员办理会员卡后收到的办理成功的信息单数据流来源:操作员数据流去向:会员数据流组成:办卡信息单=办卡时间+办卡类型+客户名称+办卡金额+操作员编码数据流量:10次/小时高峰流量:30次/小时数据流名字:查询会员记录单数据流描述:通过卡号和持卡人姓名进行查询后的查询结果数据流来源:操作员数据流去向:会员数据流组成:查询记录单=卡号+会员名称+会员基本资料数据流量:30次/小时高峰流量:50次/小时数据流名字:查询条件数据流描述:查
7、询会员资料时输入的条件数据流来源:操作员数据流去向:会员数据流组成:查询条件=卡号+持卡人姓名数据流量:30次/小时高峰流量:50次/小时数据流名字:查询消费记录记录单数据流描述:通过一定条件查询出来的结果数据流来源:操作员数据流去向:会员数据流组成:查询记录单=卡号+持卡人姓名+持卡人资料+会员消费记录数据流量:30次/小时高峰流量:50次/小时数据流名字:解禁命令数据流描述:操作员对之前停止使用的会员卡进行权限处理操作,即可继续使用。数据流来源:操作员数据流去向:会员卡数据流组成:数据流量:5次/天高峰流量:20次/天数据流名字:消费情况单数据流描述:会员的消费记录数据流来源:操作员数据流
8、去向:会员数据流组成:消费情况单=消费时间+消费金额+消费类型等数据流量:50次/小时高峰流量:100次/小时2.数据存储的定义数据存储名称:会员资料数据存储描述:存储所有办理会员卡的会员的基本资料数据存储组成:会员姓名+会员性别+会员电话+会员证件号相关联的处理:登记会员信息 修改会员资料 确认会员信息数据存储名称:卡务记录数据存储描述:存储所有会员办理会员卡的记录数据存储组成:会员姓名+办卡时间+办卡类型+办卡金额+会员证件号相关联的处理:办卡处理 预存操作 注销管理 会员挂失 停止使用 解禁数据存储名称:个人消费单据数据存储描述:存储个人消费的时间、类型、金额等记录数据存储组成:消费时间
9、+消费类型+消费金额+卡号相关联的处理:查询消费情况数据存储名称:全体会员消费记录数据存储描述:全体会员的消费记录数据存储组成:消费时间+消费类型+消费金额+卡号相关联的处理:查询所有会员卡的汇总记录3.数据处理的定义数据处理名称:登记会员信息数据处理描述:售卡时将会员信息输入到系统数据文件中输入的数据流:来源于已经核对的会员信息处理:在系统中建立新的会员帐户信息输出的数据流:正确有效的会员信息数据处理名称:办卡处理数据处理描述:输入会员卡的基本信息到系统数据文件中输入的数据流:正确有效的会员信息处理:将会员信息与会员卡信息进行绑定输出的数据流:办卡信息单数据处理名称:查询信息数据处理描述:操
10、作员根据卡号或持卡人姓名进行查询相关信息输入的数据流:查询条件处理:系统根据输入的卡号或姓名进行筛选相关的信息输出的数据流:查询记录单数据处理名称:修改会员信息数据处理描述:操作员可以修改除卡号和金额以外的会员的信息输入的数据流:核对信息处理:系统更改会员的基本信息,更新数据库输出的数据流:修改记录数据处理名称:预存操作数据处理描述:会员现在储值卡里存入一笔费用供以后使用输入的数据流:储值卡信息处理:向储值卡里预存一定金额的费用输出的数据流:充值单数据处理名称:注销管理数据处理描述:进行退卡操作后,该卡就不再继续使用输入的数据流:核对正确的持卡人信息处理:注销此卡,结算余额输出的数据流:注销清
11、单数据处理名称:会员挂失数据处理描述:会员丢失会员卡,即可进行挂失处理输入的数据流:核对正确的会员信息处理:进行挂失操作,对原先相同卡号的卡进行权限处理,无法使用。输出的数据流:卡被禁令数据处理名称:停止使用数据处理描述:停止会员卡的使用输入的数据流:核对正确的会员信息处理:对该卡进行权限处理,停止其使用,并输入合理的原因输出的数据流:卡被禁令数据处理名称:解禁数据处理描述:操作员对之前停止使用的会员卡进行权限设置,能够继续使用输入的数据流:解禁命令处理:权限设置输出的数据流:会员卡正常使用数据处理名称:查询消费情况数据处理描述:会员可以查询任何一段时间内该卡的消费情况输入的数据流:会员信息处
12、理:卡务信息输出的数据流:会员消费单据数据处理名称:查询所有会员卡的汇总记录数据处理描述:操作员可以查询所有会员卡的汇总记录输入的数据流:所有会员的信息处理:输出的数据流:查询记录单数据处理名称:登陆数据处理描述:用户登录此系统输入的数据流:用户名和密码处理:识别输入的用户名和密码是否正确输出的数据流:登录成功界面4.数据元素的定义数据元素名字:密码数据元素别名:管理员密码数据元素描述:管理员对系统进行操作前的准入口令数据元素定义:密码=6数字数据元素位置:登录数据元素名字:存款金额数据元素别名:存入额数据元素描述:会员向会员卡里存入的金额数量数据元素定义:存款金额=数字数据元素位置:会员卡
13、消费记录数据元素名字:会员卡号数据元素描述:会员建立的会员文件数据元素定义:卡号=10数字10数据元素位置:会员卡 消费记录数据元素名字:消费编号数据元素描述:会员消费的流水号数据元素定义:消费编号=8数字8数据元素位置:消费记录数据元素名字:会员身份证号数据元素别名:身份证数据元素描述:识别会员的凭证数据元素定义:身份证=18数字18数据元素位置:会员卡 会员基本信息 数据元素名字:账户余额数据元素描述:储户存储在银行的现有金额数据元素定义:账户余额=数字数据元素位置:会员卡 消费记录第三章 概念结构设计3.1引言系统开发的总体目标是实现游泳馆会员管理的系统化和自动化,减轻工作人员的工作量,
14、方便工作人员对他的操作,提高管理的质量和水平,做到高效、智能化管理,从而达到提高管理员管理效率的目的。主要任务是对会员信息、会员卡信息、消费信息的操作及处理。概念设计阶段主要是将需求分析阶段得到的用户需求抽象为信息结构(概念模型)的过程,它是整个数据库设计的关键。3.2实体概念数据模型的设计1) 会员的概念结构图3.1会员的概念结构2) 存款的概念结构图3.2存款的概念结构3) 消费记录的概念结构图3.3消费记录的概念结构4) 操作员的概念结构 图3.4 操作员的概念结构5) 参数表的概念结构 图3.5参数表的概念结构3.3系统概念结构设计根据系统需求分析,可以得出游泳池会员管理系统的概念结构
15、模型图3.6游泳池会员管理系统的概念结构模型第四章 逻辑结构设计4.1逻辑设计阶段的任务和目标以上的概念设计阶段是独立于任何一种数据模型的,但是逻辑设计阶段就与选用的DBMS产品发生关系了,系统逻辑设计的任务就是将概念设计阶段设计好的CDM转化为选用DBMS产品所支持的数据模型相符合的逻辑结构。4.2数据组织4.2.1转化为关系模型一个实体型转化为一个关系模式。实体的属性就是关系的属性,实体的码就是关系的码。对于实体型间的联系则有一下不同的情况:1) 一个1:1联系可以转化为一个独立的关系模式,也可以与任意一端对应的关系模式合并。2) 一个1:n联系可以转化为一个独立的关系模式,也可以与n端对
16、应的关系模式合并。3) 一个 m:n联系转化为一个关系模式。会员和存款之间是1:n的关系,会员与消费记录之间也是1:n的关系,因此各实体对应的关系模式为:会员(卡号、会员姓名、会员身份证号、类型、余额、状态、电话)其中,卡号为主键存款(流水号、卡号、加款、状态、操作时间)其中,流水号为主键,卡号为外键消费记录(消费编号、卡号、消费时间、消费金额)其中,消费编号为主键,卡号为外键操作员(操作员号、操作员姓名、操作员口令)其中,操作员号位主键参数表(编码、项目表、项目值)其中、编码为主键4.2.2 模型优化关系模式中,会员、会员卡、消费记录不存在非主属性与主属性的部分函数依赖,也不存在传递函数依赖
17、,已达到3NF。第五章 物理结构设计5.1物理设计阶段的目标与任务数据库的物理设计就是为逻辑数据模型选取一个最合适应用要求的物理结构的过程,在这个阶段中要完成两大任务:1) 确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构;2) 对物理结构进行评价,评价的重点是时间和空间效率。5.2 CDM转化为PDM将概念数据模型(CDM)转化成物理数据模型(PDM),根据以上CDM转化成的PDM如图所示。图5.1游泳池会员管理系统的物理数据模型5.3 PDM生成到数据库物理数据模型生成数据库图5.2数据库运行成功截图5.4 PDM生成到数据库中各表的结构图5.3会员信息结构图图5.4操作员信息
18、结构图图5.5消费记录结构图 图5.6存款结构图 图5.7参数表结构图第六章 数据库实施阶段6.1数据插入6.1.1会员基本信息表 1)手动插入三条记录 2)SQL语句插入两条记录INSERTINTO 会员VALUES (2012200207,张三,230703188703061734,储值卡,500,正常,18335100803)INSERTINTO 会员VALUES (2012200208,沈杨,26036717980423,折扣卡,0,正常,18335103587)图6.1插入会员基本信息截图3)插入后的数据图6.2插入会员基本信息结果截图6.1.2操作员基本信息表1) 手动插入三条记录
19、2) SQL语句插入两条记录INSERTINTO 操作员VALUES (1006,刘艺,687964)INSERTINTO 操作员VALUES (1007,张鑫,239800) 图6.3插入操作员基本信息截图3)插入后的数据图6.4插入操作员基本信息结果截图6.1.3消费记录基本信息表1) 手动插入三条数据2) SQL语句插入两条数据INSERTINTO 消费记录VALUES (21100004,2012200207,2014-06-10 12:00,200)INSERTINTO 消费记录VALUES (21100005,2012200208,2014-06-10 13:00,100) 图6.
20、5插入消费记录基本信息截图3)插入后的数据图6.6插入消费记录信息结果截图6.1.4参数表1) 手动插入三条记录2) SQL语句插入两条记录INSERTINTO 参数表VALUES (10004,折扣D,7)INSERTINTO 参数表VALUES (10005,折扣E,7.7) 图6.7插入参数基本信息截图3) 插入后的数据 图6.8插入参数信息结果截图6.1.5存款基本信息表1)手动插入三条记录2)SQL语句插入两条记录INSERTINTO 存款VALUES (12200004,2012200207,500,可消费,2014-06-10 12:00)INSERTINTO 存款VALUES
21、(12200005,2012200206,1000,可消费,2014-06-20 12:00)图6.9插入存款基本信息截图3) 插入后的数据图6.10插入存款信息结果截图6.2记录查询6.2.1按照持卡人姓名查询会员资料SELECT 会员.*FROM 会员WHERE 会员.会员姓名=张三 图6.11按照持卡人姓名查询会员资料6.2.2按照卡号查询会员资料SELECT 会员.*FROM 会员WHERE 会员.卡号=2012200204 图6.12按照卡号查询会员资料6.2.3查询会员的消费金额、存款金额、余额SELECT 会员.卡号,会员.会员姓名,消费记录.消费金额,存款.加款,会员.余额 F
22、ROM 消费记录,存款,会员WHERE 会员.卡号=消费记录.卡号AND消费记录.卡号=存款.卡号 图6.13查询会员的消费金额、存款金额、余额6.2.4查询一段时间内该卡的消费情况SELECT 消费记录.*FROM 消费记录WHERE 消费记录.卡号=2012200206AND消费记录.消费时间BETWEEN2014-03-01AND2014-07-01图6.14查询一段时间内该卡的消费情况6.2.5查询所有会员卡的汇总记录SELECT 会员.*,消费记录.*FROM 消费记录,会员WHERE 消费记录.卡号=会员.卡号图6.15查询所有会员卡的汇总记录6.3记录修改6.3.1 修改会员姓名
23、为张三的会员电话UPDATE 会员SET 会员电话=18335102345 WHERE 会员.会员姓名=张三 图6.16修改会员姓名为张三的会员电话6.3.2 修改卡号为“2012200208”的消费金额UPDATE 消费记录SET 消费金额=300 WHERE 消费记录.卡号=2012200208 图6.17 修改卡号为“2012200208”的消费金额6.3.3 挂失会员卡UPDATE 会员SET 状态=挂失 WHERE 卡号=2012200208图6.18 挂失会员卡6.3.4 禁用会员卡UPDATE 会员SET 状态=禁用 WHERE 卡号=2012200205图6.19 修改卡号6.
24、3.5 恢复会员卡的正常使用UPDATE 会员SET 状态=正常 WHERE 卡号=2012200208图6.20 恢复会员卡的正常使用6.4记录删除6.4.1 删除卡号为“2012200208”的消费记录DELETEFROM 消费记录WHERE 消费记录.卡号=2012200208 图6.21 删除卡号为“2012200208”的消费记录6.4.2删除卡号为“2012200204”的会员资料DELETEFROM 会员WHERE 会员.卡号=2012200204图6.22删除卡号为“2012200204”的会员资料课程设计心得与体会这次数据库课程设计我的题目是游泳池会员管理系统,本系统面对的对
25、象分别为会员和会员卡和消费记录,实现了管理员对会员基本资料和消费记录的查询与管理员对其的插入、删除、修改、查询。在设计过程中熟练掌握了数据库的使用。不仅巩固了书本上的只是,而且学到了很多课堂上学不到的东西。以前没有做过系统软件开发,只是书本上固定的思维模式,对软件开发只是一个模糊的概念,通过这次实践,让我们对软件开发有了切身体会,对系统有了一个整体的认识,在开发系统的时候思考问题更加全面。在本次设计过程中遇到了很多问题,比如概念结构设计中存在很多问题,还有就是连接到数据库中的插入记录,查询记录等,最终在老师和同学的帮助下顺利解决。此次课程设计过程中,让我体会到了开发系统是一个不断学习的过程,尤其是数据库的使用更加重要,通过这次实际操作,真正领悟到了理论与实践相结合的重要性。此次数据库课程设计,我深刻意识到了一点,就是对待繁琐的事情要有耐心。没有解决不了的问题,但是哪怕是小问题在心里静不下来的时候也是无法解决的。所以要我很好的心态,要有解决问题的耐心。比如,数据字典的书写在刚开始的时候,因为太多而一度不想再进行下去。但是经过自己的调节,意识到了一步一步地解决,对待一切要有耐心才是硬道理。参考文献1萨师煊,王珊.数据库系统概论.北京:高校教育出版社2002;2白尚旺,党伟超等.软件分析建模与PowerDesigner实现.北京:清华大学出版社,2010;32