武汉理工大学数据库系统概论课程设计报告学号:0120810340431课程设计课程名称数据库系统概论设计题目客户催款数据库设计学院/专业计算机科学与技术班级0804学号0120810340431姓名黄栋指导教师高曙日期2011年6月28日武汉理工大学数据库系统概论课程设计报告武汉理工大学数据库系统概论课程设计报告课程设计任务书学生姓名:黄栋专业班级:0804指导教师:高曙工作单位:计算机学院题目:客户催款数据库设计初始条件:客户付款记录;客户应收款清单;客户应收款预警;客户责任销售员清单。要求完成的主要任务:1.根据上述的初始条件,进行调查分析并设计适当的属性。设计一个客户催款数据库,DBMS可选MsSQLServer、Access、VFP等。2.完成课程设计说明书,其格式遵守学校今年的新规定。主要内容包括:需求分析,概念设计,逻辑设计,物理实现等。3.基于该数据库,最好实现一个或多个应用程序(自己确定功能),程序设计语言(工具)任选。这一项是选作,不作硬性要求。时间安排:本学期第19周:1.消化资料、系统调查1天2.系统分析1天3.总体设计,实施计划2天4.撰写报告1天指导教师签名:年月日系主任(或责任教师)签名:年月日武汉理工大学数据库系统概论课程设计报告客户催款数据库设计1.概述(设计题目与可行性分析)1.1课程设计题目客户催款数据库设计1.2可行性分析1.2.1可行性的前提必要性本次设计是针对客户催款数据库设计,如何使企业的更成功催款,是摆在所有企业面前的一个重要命题。如果将企业每年的坏帐、呆帐汇总,那是一笔让人触目惊心的数目,催款工作在销售管理中的重要性越来越突出。对于企业而言,能否顺利催款,决定着企业的利益能否真正地实现,因此,在尽量短的时间内催款,成为现代企业销售管理的一个基本原则。然而,在现代经济转轨的社会背景下,企业的催款任务能否顺利完成,并不完全取决于企业自身,关键在于客户能否进行积极、有效的合作。显然,对于大多数客户而言,资金并不总是处于充余的状态,更为重要的是,企业的道德信用日趋恶化,一些企业甚至以欠款、赖帐为荣。在这种情况下,企业为了避免由于催款不力而陷入被动经营的怪圈,就必须加强催款工作的管理,提高催款工作的技巧。本次设计针对这些复杂的关系和数据进行管理,绝对有利于厂商进行回款工作。有利于客户和厂商的催款交流工作。1.2.2技术可行性根据学过的各方面的知识,先修课程:高级语言程序设计、数据结构、操作系统、软件工程等,已经完全可以根据这学期学过的数据库而设计次系统,模拟客户催款数据库,实现简单的数据库要求。1.2.3操作可行性选用ACCESS数据库,它结合了MicrosoftJetDatabaseEngine和图形用户界面两项特点。它提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。武汉理工大学数据库系统概论课程设计报告2.系统目标和建设原则为了进一步规范应收帐款的日常管理和健全客户的信用管理体系,对应收帐款和已收到的回款账目在销售的事前、事中、事后进行有效控制,特制定本数据库方案和实施办法。系统设计要求能够满足客户和厂商供应方的使用要求,客户每次登录的催款记录和查询,以及供应商为方便掌握催款信息和便捷交易而设定的明确的系统。3.运行环境规划3.1网络逻辑结构此次设计针对生产商自己而设定的数据库,只允许生产商访问和修改,信息保密性很强,不允许其他用户和客户修改数据,所以本系统一定要保密性高,内部网络访问或专门的网络,设定登陆用户名和密码。3.2软件支撑环境及开发工具3.2.1软件支撑环境MicrosoftOfficeAccessMicrosoftVisualBasicMicrosoftSQLServerEclipse:Eclipse是一个非常优秀的集成开发环境。Eclipse是一个用于构建集成Web和应用程序开发工具的平台,它本身并不会提供大量的最终用户功能,而是通过插件来快速开发集成功能部件。4.需求分析说明4.1总体DFD武汉理工大学数据库系统概论课程设计报告武汉理工大学数据库系统概论课程设计报告4.2数据字典名字:货物信息别名:货物描述:供应方和销售客户间相互交易的实体的详细描述,是催款的依据定义:货物信息=商品编号+商品价格+商品名称+折扣位置:商品资料表名字:客户付款记录别名:付款信息描述:为了方便催款工作进行而设立的客户有关的回、付款总体情况记录定义:负款记录=付款编号+客户编号+销售员编号+商品编号+实付款+交易日期位置:数据库系统名字:客户信息表别名:客户记录描述:专门为客户建立的整体情况表,为了方便催款而设定的记录。定义:客户信息表=客户ID+客户名称+客户所属地区+人员素质+销售业绩+社会关系+物流陪送情况+是否合作经历+信用档案+对客户的评定等级位置:输入到打印机存储管理系统武汉理工大学数据库系统概论课程设计报告名字:客户应收款表别名:描述:存储了客户历史交易记录以及销售员信息,方便催款定义:客户应收款清单=应收款编号+客户编号+销售员编号+商品编号+商品编号+应收款+实收款+截止时间位置:系统名字:销售人员资料表别名:业务员记录描述:专门为销售人员建立的整体情况表,为了方便催款而设定的记录。定义:销售人员信息表=销售人员编号+姓名+性别+联系方式+联系地址位置:系统名字:客户责任销售清单别名:描述:存储了客户历史交易记录以及销售员信息,方便催款定义:客户责任销售清单=客户编号+销售员编号+商品编号+商品交易数量+交易时间位置:系统武汉理工大学数据库系统概论课程设计报告5.概念结构设计5.1E-R图构成E-R图的基本要素是实体型、属性和联系,其表示方法为:·实体型(Entity):具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体;在E-R图中用矩形表示,矩形框内写明实体名;比如学生张三丰、学生李寻欢都是实体。如果是弱实体的话,在矩形外面再套实线矩形。·属性(Attribute):实体所具有的某一特性,一个实体可由若干个属性来刻画。在E-R图中用椭圆形表示,并用无向边将其与相应的实体连接起来;比如学生的姓名、学号、性别、都是属性。如果是多值属性的话,再椭圆形外面再套实线椭圆。如果是派生属性则用虚线椭圆表示。·联系(Relationship):联系也称关系,信息世界中反映实体内部或实体之间的联系。实体内部的联系通常是指组成实体的各属性之间的联系;实体之间的联系通常是指不同实体集之间的联系。在E-R图中用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1,1:n或m:n)。比如老师给学生授课存在授课关系,学生选课存在选课关系。如果是弱实体的联系则在菱形外面再套菱形。武汉理工大学数据库系统概论课程设计报告E-R图客户责任销售人员客户货物账单清单销售清单催款记录管理和负责包含察看管理更新销售员编号姓名性别年龄主要客户客户ID名称所在地区联系方式主要业务货物ID验收标准规格数量价格名称已回金额时间次数统计计总金额暂存日期客户编号武汉理工大学数据库系统概论课程设计报告6.逻辑结构设计关键字说明Null|NotNull设置该列是否允许空,默认为NOTNull表示该列不允许为空DEFAULT默认值设置该列的默认值,指定的默认值参数可能是数值、字符串、日期时间数据,或者是函数名称IDENTITY(种子,增量)设置该列为标识列,内容值会自动递增产生。在设置时必须指定起始值与每次增加的值,如果没有指定默认从数值1开始,每次增加1客户(客户编号,名称,所在地区,主要业务,销售业绩,责任销售员编号,)责任销售人员(销售员编号,姓名,性别,年龄,联系方式,联系地址)货物信息(货物编号,货物名称,数量,价格)客户付帐信息(帐单编号,销售编号,客户编号,商品编号,实付款,交易日期)客户责任销售清单(客户编号,销售员编号,商品编号,商品销售数量,销售日期)客户应收款清单(应收款清单编号,客户编号,销售员编号,商品编号,应收款,实收款,欠款,截止日期)7.数据库的物理设计数据库物理设计,包括选择数据库产品,确定数据库实体属性(字段)、数据类型、长度、精度确定、DBMS页面大小等。8.数据库的实施8.1数据的载入载录客户资料,销售人员资料,商品资料,客户付款资料,客户责任销售资料,客户应收款资料。数据来源于部门中的各个不同的单位,数据的组织方式、结构和格式都与新设计的数据库系统有相当的差距,组织数据录入就要将各类数据从各个局部应用中抽取出来,输入武汉理工大学数据库系统概论课程设计报告计算机8.2应用程序的编码和调试9.数据库的运行和维护9.1.数据库的转储和恢复数据库的转储和恢复是系统正式运行后最重要的维护工作之一。DBA要针对不同的应用要求制定不同的转储计划,以保证一旦发生故障能尽快将数据库恢复到某种一致的状态,并尽可能减少对数据库的破坏。9.2.数据库的安全性、完整性控制在数据库运行过程中,由于应用环境的变化,对安全性的要求也会发生变化,比如有的数据原来是机密的,现在是可以公开查询的了,而新加入的数据又可能是机密的了。系统中用户的密级也会改变。这些都需要DBA根据实际情况修改原有的安全性控制。同样,数据库的完整性约束条件也会变化,也需要DBA不断修正,以满足用户要求。9.3.数据库性能的监督、分析和改造在数据库运行过程中,监督系统运行,对监测数据进行分析,找出改进系统性能的方法是DBA的又一重要任务。目前有些DBMS产品提供了监测系统性能参数的工具,DBA可以利用这些工具方便地得到系统运行过程中一系列性能参数的值。DBA应仔细分析这些数据,判断当前系统运行状况是否是最佳,应当做哪些改进。例如调整系统物理参数,或对数据库进行重组织或重构造等。9.4.数据库的重组织与重构造数据库运行一段时间后,由于记录不断增、删、改,会使数据库的物理存储情况变坏,降低了数据的存取效率,数据库性能下降,这时DBA就要对数据库进行重组织,或部分重组织(只对频繁增、删的表进行重组织)。DBMS一般都提供数据重组织用的实用程序。在重组织的过程中,按原设计要求重新安排存储位置、回收垃圾、减少指针链等,提高系统性能。10.心得体会此次设计针对生产商自己而设定的数据库,只允许生产商访问和修改,信息保密性很强,不允许其他用户和客户修改数据,所以本系统一定要保密性高,内部网络访问或专门的网络,设定登陆用户名和密码。此次课程设计最深的体会,也是以前实验和课程设计时最深的体会,那就是动手能力武汉理工大学数据库系统概论课程设计报告真的和课本不一样,我们不仅仅需要思维,更需要动手,去探索,去研究,不是凭空说是就是,一直以为课程设计题目很容易,但是当开始理顺流程的时候,才发现原来一塌糊涂,不是客户,责任销售员,就是等的混乱,就是它们之间关系的不区分和码元的区分,对应关系等。一直处于混乱状态,直到开始写了数据字典,和一些属性关系等,才开始明白了此次设计的核心,然后便顺利的达到了基本目的和要求。在数据库安装的过程中也遇到了问题,本来想不会影响运行,结果却是这一点疏忽导致了不能运行,还要到实验室去进行设计,后来经过同学的建议和指导,我才正确的安装了各个组建。数据库系统是一门综合性和实践性较强的课程,为能让学生在较短的时间内很好地掌握数据库系统的最主要的技术,以一个具体数据库应用课题为背景,以指定的DBMS为支撑环境进行实际设计开发,通过数据库的设计实践能把数据库的基本知识和技术应用于软件开发。本规划针对性强,保密性强,对于非法请求予以拒绝。程序健壮性对管理员的键盘输入进行即时检查,对于非法输入给以对话框提示,从而保证了程序的健壮性(鲁棒性)。最主要的是实时性强。通