《游泳馆会员管理系统课程设计汇本报告.doc》由会员分享,可在线阅读,更多相关《游泳馆会员管理系统课程设计汇本报告.doc(26页珍藏版)》请在课桌文档上搜索。
1、 1 / 26数据库系统原理课程设计报告项目名称: 游泳馆会员管理系统数据库设计 摘 要随着经济的发展和消费水平的提高,人们消费越来越多样化,这就使游泳馆对顾客资料信息的管理更加繁琐。会员管理系统能更好、更准、更方便的对会员的相关信息进行管理,并且更有效的维护游泳馆信息。这样不但有助于游泳馆会员秩序的管理与发展和信息维护,并且有助于提高游泳馆在用户中的形象,进而提高其知名度和竞争力。系统采用 access 作为开发工具。实现了管理员对会员信息的录入、更新和修改,并且可以按会员某、会员卡卡号查询会员的基本信息。本文首先分析了会员管理程序的必要性,由此提出了自己的会员管理程序思想。然后阐述了系统的
2、设计原则,功能实现过程,最后阐述了本系统的实用性,并说明了需完善之处。关键字:会员;会员卡;信息管理;关键字:会员;会员卡;信息管理;AccessAccess;目 录1 1引言引言 3 32.2.需求分析阶段需求分析阶段 3 32.1 引言 32.2 需求分析阶段的目标与任务 42.3 需求分析阶段成果 53 3 概念设计阶段概念设计阶段 8 83.1 引言 83.2 任务与目标 83.3 阶段结果 84 4逻辑设计阶段逻辑设计阶段 10104.1 逻辑设计的任务和目标 104.2 数据组织 10 2 / 264.2.1 将 E-R 图转换为关系模型 114.2.2 模型优化 114.2.3
3、数据库模式定义 114.2.4 用户子模式定义 124.3 数据处理 135 5物理设计阶段物理设计阶段 14145.1 物理设计阶段的目标与任务 145.2 数据存储方面 145.3 系统功能模块 155.3.1 会员基本信息的查询和更新模块 155.3.2 会员卡信息的建立模块 166 6数据库实施阶段数据库实施阶段 16166.1 建立数据库、数据表、视图、索引 166.1.1 建立数据库 166.1.2 建立数据表 166.1.3 建立窗体 197 7系统调试和测试系统调试和测试 20208 8实习心得实习心得 20209 9存在的问题及建议存在的问题及建议 2020参考文献参考文献
4、2121附录附录 1 1 存储过程定义存储过程定义 2222附录附录 2 2 数据查看和存储过程功能的验证数据查看和存储过程功能的验证 2323附录附录 3 3 登录界面源代码登录界面源代码 23231引言当今中国游泳馆产业发展正盛,大量游泳馆涌现于各个城市,很大程度上为人们的生活提供了快乐,游泳馆为了避免固定客流的流失推出了会员卡制度。游泳馆会员管理系统就是为了更好管理会员信息而产生的,它能使游泳馆管理员快速注册新会员,能修改和更新会员信息,能通过某、会员卡卡号等条件查询会员的消费信息。会员管理系统相对于传统的管理而言具有查询方便、维护简易、精确性高等优点。计算机的使用能够大量节省人力、物力
5、、财力,而且还可以大大提高会员资料的安全性和完整性。本系统的开发要求是利用 Access 开发会员管理系统,满足游泳馆对会员管理的要求,能够为 3 / 26会员信息管理提供便利。全文分为目录、需求分析、概要设计、逻辑设计、物理设计,以及系统的实现等全过程。在程序设计与调试上采用了自上而下,逐步细化,逐步完善的原则。采用结构化的功能模块设计系统功能,可读性好,易于扩充。2.需求分析阶段2.1 引言随着社会发展,计算机的广泛应用已成为社会发展的重要标志。这个社会是个信息高速发展的社会,它不仅体现在高科技上,而且体现在我们日常的生活中。根据软基工程学的要求,开发软件首先要做的且也是开发过程中最主要的
6、就是系统的需求分析,它同时也是软件生存周期中关键的一步。根据软件工程学开发软件的要求,对游泳馆会员管理系统的全部功能和相关技术进行具体的分析,分析时采用结构化的分析方法,自顶向下,逐步分解问题,下面就对游泳馆会员管理系统进行系统分析,以确定该软件的规模、应具有的功能提出的各项要求及所需要的硬件环境和软件支持,确定开发的软件与外界的接口。根据用户的情况确定软件对操作的要求,以及待开发软件总体上的约束和限制。在构造系统时,首先从需求出发构造数据库表,然后再由数据库表结合需求划分系统功能模块。这样,就把一个大的系统分解成了几个小系统。这里把系统的层次划分为了两个部分:管理员部分与会员部分。能够实现以
7、下功能:进行会员信息的录入、修改、删除及查询等; 1实现卡的发行、卡的注销、更改信息;定义会员的种类及优惠信息;2.2 需求分析阶段的目标与任务2.2.1 处理对象会员基本信息:会员卡卡号,某,性别,年龄,联系方式,购卡日期会员卡信息:会员卡卡号,会员卡编号,会员卡种类消费项目信息:项目编号,项目名称,项目种类,单价会员消费信息:会员卡卡号,项目编号,数量优惠信息:会员卡卡号,会员卡种类,折扣 4 / 262.2.2 处理功能及要求1能够存储会员的基本信息,并方便有效的进行相应的会员信息数据操作和管理,这主要包括:1)会员信息的录入、删除及修改。2)会员信息的多关键字检索查询。能够对游泳馆项目
8、的种类价格等进行相应的信息存储与管理,这其中包括:1) 游泳项目信息的及时添加删除及更新。2)会员的消费信息的管理3)会员消费信息的统计与查询。3能够提供一定的安全机制,提供数据信息授权访问,防止随意删改、查询。2.2.3.安全性和完整性要求1) 安全性要求 系统安全性要求体现在数据库安全性、信息安全性和系统平台的安全性等方面。安全性先通过窗体机制,不同的用户只能访问系统授权的窗体,这样可提供系统数据一定程度上的安全性,再通过分配权限、设置权限级别来区别对待不同操作者对数据库的操作来提高数据库的安全性;系统平台的安全性体现在操作系统的安全性、计算机系统的安全性和网络体系的安全性等方面。2) 完
9、整性要求系统完整性要求系统中数据的正确性以及相容性。可通过建立主、外键,使用 check 约束更新。2.32.3 需求分析阶段成果需求分析阶段成果2.3.12.3.1 游泳馆会员管理系统数据流程图游泳馆会员管理系统数据流程图顶层数据流图:会员收银员申请查询反馈数据反馈数据操作要求游泳馆会员管理系统游泳馆会员管理数据流图: 5 / 26 查询信息管理会员信息信息反馈信息反馈查询修改信息游泳馆会员管理系统消费项目信息会员管理会员卡日常管理会员基本信息管理会员基本信息管理数据流图:会员基本信息管理消费项目办卡日期会员卡类会员卡号会员名称打折信息会员管理数据流图: 6 / 26会员信息管理会员卡折扣状
10、况会员入会 7 / 262.3.22.3.2 游泳馆会员管理系统数据字典游泳馆会员管理系统数据字典名字:会员基本信息描述:记录会员的某,性别,购卡日期,使用期限基本状况。定义:会员基本信息=某+性别+卡号+会员种类位置:消费者名字:会员卡描述:成为会员的一种凭证,可以享受购物的一定优惠。定义:会员卡=限会员本人使用+优惠位置:会员拥有名字:报表描述:打印会员购物基本信息定义:报表=购物物品+物品名称+物品件数+目前价格+所有物品总价位置:输出到打印机 8 / 263 概念设计阶段3.1 引言系统开发的总体目标是实现游泳馆会员管理的系统化和自动化,减轻工作人员的工作量,方便工作人员对它的操作,提
11、高管理的质量和水平,做到高效、智能化管理,从而达到提高游泳馆管理效率的目的。主要任务是对会员信息、会员卡信息、消费项目信息、优惠信息、会员消费信息的基本信息的操作及外理。概念设计阶段主要是将需求分析阶段得到的用户需求抽象为信息结构(概念模型)的过程,它是整个数据库设计的关键。3.2 任务与目标(1)选择中层数据流为切入点,通常选择实际系统中的子系统;(2)设计分 E-R 图,即各子模块的 E-R 图;(3)生成初步 E-R 图,通过合并方法,做到各子系统实体、属性、联系统一;(4)生成全局 E-R 图,通过消除冲突等方面。3.33.3 阶段结果阶段结果(1)根据不同的对象,分别画出各分 ER
12、图:(a)从会员基本信息抽象出的分 ER 图:名字:会员政策描述:会员卡具体优惠政策定义:会员政策=会员所享受的各种优惠具体内容位置:会员管理系统 9 / 26会员卡卡号会员某性别年龄联系方式购卡日期(b)从会员卡信息抽象出的分 ER 图:会员卡会员卡卡号会员卡编号会员卡种类(c)从游泳馆消费项目信息抽象出 ER 图:项目项目编号项目名称项目种类价格(2)合并各分图,消除属性冲突、命名冲突、结构冲突等三类冲突,得到初步 E-R 图,再消除不必要冗余,得到的基本 E-R 图如下所示: 10 / 26全局 E-R 图属于会员会员类别消费项目管理员会员卡管理办理(3)各 ER 图各实体的属性如下所示
13、:会员(会员卡卡号,某, 性别, 年龄, 联系方式, 购卡日期, 会员种类,折扣)会员卡(会员卡卡号,会员某,会员性别,会员年龄 ,会员卡编号, 会员卡种类, 办卡日期)消费信息(会员卡卡号,消费项目编号,项目名称,项目种类,价格,数量)4 4逻辑设计阶段逻辑设计阶段4.14.1 逻辑设计的任务和目标逻辑设计的任务和目标以上的概念设计阶段是独立于任何一种数据模型的,但是逻辑设计阶段就与选用的 DBMS 产品发生关系了,系统逻辑设计的任务就是将概念设计阶段设计好的基本 E-R 图转换为选用 DBMS 产品所支持的数据模型相符合的逻辑结构。具体内容包括数据组织(将 E-R 图转换成关系模型、模型优
14、化、数据库模式定义、用户子模式设计) 、数据处理(画出系统功能模块图)两大任务。4.24.2 数据组织数据组织4.2.1 将 E-R 图转换为关系模型实体型转换为关系模式。实体的属性就是关系的属性,实体的码就是关系的码。对于实体间的联系则有以下不同的情况: 11 / 26 一个 m:n 联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。一个 1:n 联系可以转换为一个独立的关系模式,也可以与 n 端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为 n 端
15、实体的码。 一个 1:1 联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。三个或三个以上实体间的一个多元联系可以转换为一个关系模式。与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合具有相同码的关系模式可合并。将联系转化成独立的关系模式,具体的基本 E-R 图向关系模型的转化如下:会员:会员(会员卡卡号,某,性别,年龄,联系方式,购卡日期,会员种类,折扣)会员卡:会员卡(会员卡卡号,会员某,会员性别,会员年龄,会员卡编号,会员卡种类,办卡日期)消费信息:消费信息(会员卡卡号,消费项目编号,项目名称,项目种类,价格,数量)4.2.2
16、 模型优化关系模式会员,会员卡,消费项目,优惠规则 不存在非主属性对主属性的部分函数依赖,也不存在传递函数依赖,已经达到了 3NF。消费信息则存在部分依赖。4.2.3 数据库模式定义表 2.1 会员基本信息表列名列名数据类型数据类型可否为空可否为空会员卡卡号Charnot null某Charnot null性别Charnot null年龄Charnot null联系方式Charnot null购卡日期Date/time表 2.2 会员卡信息表列名列名数据类型数据类型可否为空可否为空会员卡卡号Charnot null会员卡编号Charnot null会员卡种类Charnot null表 2.3
17、物品信息表列名列名数据类型数据类型可否为空可否为空消费项目编号Charnot null项目名称Charnot null 12 / 26项目种类Charnot null价格Monetarynot null表 2.4 会员购物信息表列名列名数据类型数据类型可否为空可否为空会员卡卡号Charnot null消费项目编号Charnot null数量Digital表 2.5 优惠信息表列名列名数据类型数据类型可否为空可否为空会员卡卡号Charnot null会员卡种类Charnot null折扣Digitalnot null4.2.4 用户子模式定义用户子模式定义表 2.7 用户子模式定义编号编号用户子
18、模式用户子模式(View)(View)作用作用( (共性:提供数据某和安全保护机制共性:提供数据某和安全保护机制) )V1会员便于查询和修改会员的基本信息V2会员卡便于查询和修改会员卡的基本信息V3会员消费信息便于会员消费历史信息的查询V4优惠规则用于设置、查询卡的优惠信息V5消费项目信息用于建立更新消费项目信息表 2.8 会员基本信息视图列名列名数据类型数据类型可否为空可否为空说明说明VIPNoCharnot null会员编号VIPNameCharnot null会员某VIPSexCharnot null会员性别VIPTypeCharnot null会员类型VIP contact infor
19、mationCharnot null会员联系方式Conduction dateDate/time办卡日期表 2.9 会员卡基本信息视图列名列名数据类型数据类型可否为空可否为空说明说明CardNoCharnot null会员卡卡号Card TypeCharnot null会员卡的种类表 2.10 会员购物信息视图列名列名数据类型数据类型可否为空可否为空说明说明CardNoCharnot null会员卡卡号VIPNameCharnot null会员某 13 / 26ConsumptionItemNameCharnot null消费项目名称Item TypeCharnot null项目种类Unit
20、priceMonetarynot null价格NumberDigitalnot null数量PriceMonetary总价表 2.11 优惠规则信息视图列名列名数据类型数据类型可否为空可否为空说明说明CardNoCharnot null会员卡卡号Card TypeCharnot null会员卡种类DiscountDigitalnot null折扣表 2.12 商品信息视图列名列名数据类型数据类型可否为空可否为空说明说明ConsumptionItem IDCharnot null项目标号Item NameCharnot null消费项目名称ItemTypeCharnot null项目种类Unit
21、 priceMonetarynot null单价4.34.3 数据处理数据处理系统功能模块图: 14 / 26会员管理系统会员基本信息会员卡管理会员消费管理项目管理会员某会员性别消费情况会员卡卡号性别卡类型购卡日期新卡发行卡注销办卡日期更改卡信息消费项目项目编号项目名称项目编号5 5物理设计阶段物理设计阶段5.15.1 物理设计阶段的目标与任务物理设计阶段的目标与任务 数据库的物理设计就是为逻辑数据模型选取一个最合适应用要求的物理结构的过程,在这个阶段中要完成两大任务:(1)确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构;(2)对物理结构进行评价,评价的重点是时间和空间效率。5.
22、25.2 数据存储方面数据存储方面为数据库中各基本表建立的索引如下:1.由于基本表会员基本信息表、会员卡信息表,消费项目信息表的主码会员卡卡号,项目编号经常在查询条件和连接操作的连接条件中出现,且它们的值唯一,在两个属性上建立唯一性索引;2.由于基本表会员卡信息表的属性会员种类的属性经常在查询条件中出现在两个属性上建立聚簇索引; 15 / 263.会员消费信息表的属性会员卡卡号,项目编号,经常在查询条件中出现,考虑在其之上建立聚簇索引;5.35.3 系统功能模块系统功能模块5.3.1 会员基本信息的查询和更新模块将实现对会员基本信息的查询和更新(修改、添加、删除)操作,具体的功能模块图如下:5
23、.3.2 会员卡信息的建立模块将完成对会员卡信息的建立注册操作,用于发行新卡,具体的功能模块图如下所示: 16 / 266 6数据库实施阶段数据库实施阶段6.16.1 建立数据库、数据表、视图、索引建立数据库、数据表、视图、索引6.1.16.1.1 建立数据库建立数据库6.1.2 建立数据表(1)会员基本信息表的建立: 17 / 26(2)会员卡信息表的建立: 18 / 26(3)消费项目信息表的建立:(4)会员购物信息表的建立: 19 / 26(5)优惠规则表的建立:6.1.3 建立窗体(1)用于会员基本信息的窗体定义如下: (2)用于会员卡信息查询的窗体定义如下:(3)用于显示会员消费信息
24、的窗体定义如下:(4)用于项目信息的窗体定义如下: 20 / 267 7系统调试和测试系统调试和测试对该超市会员管理系统进行测试,验证每个功能是否符合要求,具体的测试如下:(1)通过视图查看各个基本表和视图中的数据(见附录 1)(2)检测各个存储过程的功能:(见附录 2)8 8实习心得实习心得1. 这次课程设计使我熟悉了系统设计的整体步骤。系统设计大体可分为需求分析、概念设计、逻辑设计、物理设计、数据库的实施及调试测试六大步骤。在具体的实施阶段中,表的建立及表间关系最为重要,其实这也是需求分析重要性的体现。2. 这次课程设计加深了我对数据库系统概论相关知识和 Access 相关功能的理解。但由
25、于缺乏知识的整合,有些功能在具体操作上无法实现,导致所建系统只是雏形,很不完善。例如在卡的挂失及解挂上我没能实现。9 9存在的问题及建议存在的问题及建议1我觉得在这次课程设计中,需求分析阶段是致关重要的,但由于同学们都是第一次做这样的系统设计,都不是很熟悉需求分析的主要方法和主要任务,所以都很盲目,认为随便从网上搜点相关的知识就可以了,但其实,这直接影响着后面的各个阶段的工作的进行。所以希望老师在实习前能给我们对需求分析阶段的工作进行一定的指导。 21 / 26参考文献参考文献1 Access 课程设计案例精编 作者:毕超 :中国水利水电2 Access 数据库开发经典案例解析作者: 王晟 :
26、 清华大学3 Access 进销存管理数据库开发作者 凯际资讯工作室 :中国青年4 VISUAL BASIC 6.0 信息管理系统开发实例导航作者:求是科技 :人民邮电5ACCESS 数据库系统项目开发实践作者: 苏瑞 :科学6 VISUAL BASIC+ACCESS 数据库应用实例完全解析作者:李敏业 :人民邮电出版 22 / 26附录附录 1 1 存储过程定义存储过程定义1) 查看会员基本信息表中的数据2) 查看会员卡信息表中的数据:3) 查看信息表中的数据:4)查看优惠规则表中的数据5)查看消费信息表中的数据:6)查看会员基本信息窗体中的数据:7)查看会员卡信息窗体的数据: 23 / 2
27、6附录附录 2 2 数据查看和存储过程功能的验证数据查看和存储过程功能的验证1.1. 基本表的数据录入:基本表的数据录入:1)会员基本信息表中的数据附录附录 3 3 登录界面源代码登录界面源代码PrivatePrivate SubSub cmdOK_Click()cmdOK_Click() IfIf IsNull(Me.cboUserName)IsNull(Me.cboUserName) ThenThen MsgBoxMsgBox 请输入您的用户名!请输入您的用户名!, vbQuestionvbQuestion ExitExit SubSub EndEnd IfIf IfIf loginlog
28、in = = TrueTrue ThenThen DoCmd.CloseDoCmd.Close acForm,acForm, Me.NameMe.Name DoCmd.OpenFormDoCmd.OpenForm 超市会员管理系统超市会员管理系统 ElseElse MsgBoxMsgBox 用户名或密码不正确用户名或密码不正确!,!, vbCriticalvbCritical ExitExit SubSub EndEnd IfIf 24 / 26EndEnd SubSubPublicPublic FunctionFunction login()login() AsAs BooleanBoole
29、an DimDim rstrst AsAs NewNew ADODB.RecordsetADODB.Recordset DimDim strSQLstrSQL AsAs StringString strSQLstrSQL = = SELECTSELECT 员工员工 Id,Id, 密码密码 FROMFROM 员工表员工表 WHEREWHERE 员工员工 IdId = = & & Me.cboUserNameMe.cboUserName rst.Openrst.Open strSQL,strSQL, CurrentProject.Connection,CurrentProject.Connecti
30、on, adOpenStaticadOpenStatic IfIf rst.RecordCountrst.RecordCount 0 0 ThenThen IfIf rst(rst(密码密码) = = Me.TxtPwdMe.TxtPwd ThenThen loginlogin = = TrueTrue EndEnd IfIfEndEnd FunctionFunctionPrivatePrivate SubSub cmdOK_Click()cmdOK_Click() IfIf IsNull(Me.cboUserName)IsNull(Me.cboUserName) ThenThen MsgBo
31、xMsgBox 请输入您的用户名!请输入您的用户名!, vbQuestionvbQuestion ExitExit SubSub EndEnd IfIf IfIf loginlogin = = TrueTrue ThenThen 25 / 26 DoCmd.CloseDoCmd.Close acForm,acForm, Me.NameMe.Name DoCmd.OpenFormDoCmd.OpenForm 超市会员管理系统超市会员管理系统 ElseElse MsgBoxMsgBox 用户名或密码不正确用户名或密码不正确!,!, vbCriticalvbCritical ExitExit Sub
32、Sub EndEnd IfIfEndEnd SubSubPublicPublic FunctionFunction login()login() AsAs BooleanBoolean DimDim rstrst AsAs NewNew ADODB.RecordsetADODB.Recordset DimDim strSQLstrSQL AsAs StringString strSQLstrSQL = = SELECTSELECT 员工员工 Id,Id, 密码密码 FROMFROM 员工表员工表 WHEREWHERE 员工员工 IdId = = & & Me.cboUserNameMe.cbo
33、UserName rst.Openrst.Open strSQL,strSQL, CurrentProject.Connection,CurrentProject.Connection, adOpenStaticadOpenStatic IfIf rst.RecordCountrst.RecordCount 0 0 ThenThen IfIf rst(rst(密码密码) = = Me.TxtPwdMe.TxtPwd ThenThen loginlogin = = TrueTrue EndEnd IfIfEndEnd FunctionFunctionPrivatePrivate SubSub c
34、mdOK_Click()cmdOK_Click() 26 / 26 IfIf IsNull(Me.cboUserName)IsNull(Me.cboUserName) ThenThen MsgBoxMsgBox 请输入您的用户名!请输入您的用户名!, vbQuestionvbQuestion ExitExit SubSub EndEnd IfIf IfIf loginlogin = = TrueTrue ThenThen DoCmd.CloseDoCmd.Close acForm,acForm, Me.NameMe.Name DoCmd.OpenFormDoCmd.OpenForm 超市会员管理系统超市会员管理系统 ElseElse MsgBoxMsgBox 用户名或密码不正确用户名或密码不正确!,!, vbCriticalvbCritical ExitExit SubSub EndEnd IfIfEndEnd SubSub