资源描述
摘 要
长久以来,企业客户关系管理系统都是依赖企业工作人员手工进行的,面对如此众多的客户信息,其工作量可想而知。不仅仅浪费了大量的人力物力,而且由于人工管理存在着大量的不可预见的因素,造成了企业对客户信息管理的某些不规范,使得企业客户信息管理陷入管理繁琐,信息混乱的地步。为有效降低运营成本,杜绝管理漏洞,针对现在企业客户信息管理的弊端,根据企业客户信息管理的基本流程,使企业有一套完善的管理系统是非常必要的。从而使其企业的客户量日渐增加。客户量的上升,不仅带动了销售,也从另一个侧面反映出,在企业客户信息管理信息系统的协助下,企业正在以其专业的服务精神、严谨的管理风格逐步赢得客户的信赖,从而在市场竞争中确立战略优势。
而企业客户关系管理系统的开发使其实现了与客户相关的各种信息的系统化、规范化和自动化。通过对客户信息管理模块基本功能的实现,对客户的各种信息进行增加、删除、查找、修改等操作,完成对客户的信息管理。这些功能基本可以满足一般企业对客户管理的需求,使企业节省人力物力,减轻劳动强度;降低成本,节省开支;提高了管理水平,增强了企业在同行业中的竞争力;同时提高了客户信息处理的及时性和准确性。
关键词:客户管理 C# SQL Server 2005 客户关系管理
ABSTRACT
For a long time, enterprise customer relationship management systems, which rely on corporate staff by hand, in the face of so many customer information, the workload can be imagined. Not only waste a lot of manpower and resources, and because there are a lot of manual management of unforeseen factors, resulting in customer information management business of some non-standard, allows businesses to manage customer information management into a complicated, the information is confusing to the point. To effectively reduce operating costs, eliminate loopholes in management, information management for enterprise customers are now the drawbacks, according to the enterprise customer information management, the basic process, the company has a comprehensive management system is necessary. Making it the increasing amount of corporate customers. Increase the amount of customers, not only to drive sales, but also from the other side shows, customer information management in the enterprise information system with the assistance of its professional services business is the spirit, rigorous management style and gradually won the trust of customers, resulting in competition in the market to establish a strategic advantage.
The enterprise customer relationship management system development with customers to achieve a variety of information related to the systematic, standardized and automated. Through the customer information management, call records management, customer product information to achieve the basic functions of three modules, a variety of information to customers to add, delete, find, edit and other operations to complete the customer information management. These features are essential to meet general business needs of the customer management to enable enterprises to save manpower and resources, reduce labor intensity; reduce costs, save money; improve management, enhance the company in the industry's competitiveness; while improving customer information processing timeliness and accuracy.
Keywords: Customer management C# SQL Server 2005 Customer Relationship Management
目 录
1 前 言 1
1.1 课题背景 1
1.2 课题研究内容及意义 1
1.3 客户信息系统模块需求分析原则 2
1.4 客户关系概述 2
1.5 系统开发方法的选择 2
2 关键技术介绍 4
2.1 系统开发环境 4
2.1.1 硬件环境 4
2.1.2 软件环境 4
2.2 关键技术介绍 C# 4
2.3 SQL语言简单介绍 5
2.4 SQL SERVSER数据库 5
2.5 WinForm 6
2.6 系统安全性分析 6
3 系统分析 8
3.1 客户信息模块系统设计的任务 8
3.2 客户信息展示模块系统功能结构图 8
3.3 客户信息系统展示模块系统功能详细设计 9
3.4 系统业务流程图 10
3.5 数据字典 11
4 系统设计 13
4.1 客户商品展示模块系统数据库设计 13
4.1.1 数据库设计概述 13
4.1.2 数据库设计规则 13
4.2数据库的概念设计 14
4.3 数据库的物理设计 14
5 详细设计 17
5.1 系统登录页面实现 17
5.2 客户资料管理模块的实现 17
5.2.1 客户添加 17
5.2.2 客户删除 18
5.2.3 客户修改 19
5.2.4 客户查询 19
5.3 用户管理模块的实现 20
5.3.1 用户管理模块 20
6 系统测试 21
6.1 系统测试简述 21
6.2 系统测试 21
6.2.1 系统入口测试要点 21
6.2.2 客户添加信息测试要点 21
6.3 系统测试效果 22
结 论 23
谢 辞 24
参考文献 25
附 录 26
大连交通大学信息工程学院2012届本科生毕业设计(论文)
1 前 言
1.1 课题背景
企业客户关系管理系统,以企业的客户为中心,从获取和保存客户资料到跟踪客户、签单、售后服务、记录缺陷、反馈客户需求等业务,主要是销售分析、销售预测、销售定单处理、市场营销和客户服务等,并对产品研发和生产提供客户需求信息。企业客户关系管理系统作为强大的客户关系管理系统的一部分其发挥的作用也是显而易见的,对于竞争激烈的市场,很好的掌握用户的资料信息是在市场中立于不败之地的必要条件,俗话说的好:知己知彼,百战不殆。很好的了解竞争对手,合作伙伴,潜在客户是取得客户关系的关键。而企业客户关系管理系统是集客户资料为主体,潜在客户,竞争对手,合作伙伴为附体充分了解客户的一种工具。
1.2 课题研究内容及意义
企业客户关系管理系统对企业来讲,首先是一个商业战略,是帮助企业实现管理关系变化的工具,通过此工具,企业可以透过多种渠道(电话、电子邮件、无线通信等)为客户提供全方位的服务,所提供的活动既涉及到市场与销售部门,还涉及到技术支持和服务等部门。同时本系统也是一个系统集成工程,实施本系统的最终目的是帮助企业增加收入、提高利润、提高客户满意度。综合众多国外著名研究机构和跨国公司(Gartnet Group、IBM、惠普等)对企业客户关系管理系统的诠释,企业客户关系管理系统的概念可由三个层面来表述:1、企业客户关系管理系统是一种现代的经营管理理念,即宏观概念;2、企业客户关系管理系统包含的是一整套解决方案,即中观概念;3、企业客户关系管理系统意味着一套应用软件系统,即微观概念。
本系统的核心思想是“以客户为中心”。作为管理系统,企业可以通过与客户的互动来分析客户既时的数据变化以增进对目标客户和潜在客户的了解,从而为不同客户提供个性化的服务。在“以客户为中心”的时代,会展企业管理应变的关键就是如何有效地实现对企业供应链(Supply Chain)的管理,而客户是供应链的“头”,本系统是在真正意义上实现了解决下游供应链的管理。企业客户关系管理系统的核心管理理念:首先是将客户作为当前企业最重要的资源,让客户成为企业资源的途径就是提高客户的满意度;其次本系统系统是企业供应链管理(Supply Chain Management)的延伸,提供企业下游供应链管理的整体解决方案,同时本系统也将企业与客户之间发生的关系进行全面的评估与管理。英国著名克兰菲尔德管理大学的麦尔科姆教授对企业客户关系管理系统有一形象的比喻:如果将企业客户关系管理系统比作一张凳子,那么它有三条腿:战略、营销和IT,如果缺少其中任何一条腿的支撑,都可能引起系统的失效。因此,本系统不能孤立地建立在某一方面,它应是现代企业管理的重要组成部分。
1.3 客户信息系统模块需求分析原则
本系统信息量大,实现的功能复杂,应具有合理的信息存贮、管理、传输功能,对系统的处理能力、可性、安全性要求高。因此,总体设计应遵循以下原则:
1、科学性:采用开发Web应用的先进、开放式的技术,实现基于数据库C/S体系结构的信息系统。
2、可靠性:系统应有足够的数据吞吐能力和合理的程序处理功能,在Web多并发用户大批量对数据查询、更新时,能稳定可靠地运行。
3、易维护性:应采用先进的程序设计模式,使程序模块结构合理,程序代码共享性好,可扩展、可维护性好。
4、实用性:系统功能应满足各类用户的功能需求。
5、易操作性:建立友好的用户界面,操作方便。
6、安全性:应采用合理的安全技术,保证服务器、用户关键数据传输等安全。
1.4 客户关系概述
客户管理系统涵盖了客户管理、拜访管理和客户商品管理三方面的企业活动。这些客户接触点能提供增强客户关系的必须条件。这个“精彩”的CRM系统是客户和企业双赢的基础。最终用户可以获得增值服务,而公司管理层可以收到有关企业围绕客户运作情况的持续不断的准确而最新的信息。
1.5 系统开发方法的选择
根据企业客户管理系统各个模块的特点,采用的是结构化分析方法和原型法结合的系统开发方法。
结构化分析方法(Structured Method,结构化方法)强调的是开发方法的结构合理性以及所开发软件的结构合理性的软件开发方法。结构是指系统内各个组成要素之间的相互联系、相互作用的框架。结构化开发方法提出了一组提高软件结构合理性的准则,如分解与抽象、模块独立性、信息隐蔽等。针对软件生存周期各个不同的阶段,它有结构化分析、结构化设计和结构化程序设计等方法。
结构化分析的步骤如下:
1、 分析当前的情况,做出反映当前物理模型的DFD;
2、 推导出等价的逻辑模型的DFD;
3、 设计新的逻辑系统,生成数据字典和基元描述;
4、 建立人机接口,提出可供选择的目标系统物理模型的DFD;
5、 确定各种方案的成本和风险等级,据此对各种方案进行分析;
6、 选择一种方案;
7、 建立完整的需求规约。
结构化设计方法给出一组帮助设计人员在模块层次上区分设计质量的原理与技术。它通常与结构化分析方法衔接起来使用,以数据流图为基础得到软件的模块结构。SD方法尤其适用于变换型结构和事务型结构的目标系统。在设计过程中,它从整个程序的结构出发,利用模块结构图表述程序模块之间的关系。
结构化设计的步骤如下:
1、 评审和细化数据流图;
2、 确定数据流图的类型;
3、 把数据流图映射到软件模块结构,设计出模块结构的上层;
4、 基于数据流图逐步分解高层模块,设计中下层模块;
5、 对模块结构进行优化,得到更为合理的软件结构;
6、 描述模块接口。
原型法是从开始就根据系统分析人员对用户要求的理解,在强有力的软件环境支持下,给出一个实际的系统模型(或称原型),这个模型大致表达了系统分析人员对当前用户要求的理解和他们希望系统实现后的形式。之后,系统分析人员和用户一起,对这个模型进行评价。原型法的最大优点是能够大大降低软件系统开发后期的维护费用,使系统功能正确地反映用户需求。比较适合于用户需求不清、业务理论不确定、需求经常变化的情况。
原型法开发方法重要步骤:
第一个步骤是市场调研,技术和市场要结合才能体现最大价值;
第二个步骤是需求分析;
第三个步骤是概要设计;
第四个步骤是详细设计;
第五个步骤是编码;
第六个步骤是测试。
2 关键技术介绍
2.1 系统开发环境
2.1.1 硬件环境
处理器:Inter 酷睿T7200。
内存:2.0G DDR2内存。
硬盘空间:80G。
2.1.2 软件环境
软件环境的选择是程序员开发一个系统首要考虑也是最为关键的一个因素,选择适当且兼容性好的软件环境,会大大提高软件开发的效率,同时为将来的软件移植打下坚实的基础。考虑到时下各个经销商实际的硬件、软件条件,选择了以下软件:
操作系统:Windows XP Professional。
数据库:SQL Server 2005。
系统开发工具:Viusal Studio。
软件开发语言: C#。
该软件的界面美观大方,软件运行稳定。
2.2 关键技术介绍 C#
C#读做 "C sharp",中文译音暂时没有.专业人士一般读"C sharp",现在很多非专业一般读"C井"。C#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司研究员Anders Hejlsberg的最新成果。C#看起来与Java有着惊人的相似;它包括了诸如单一继承、接口、与Java几乎同样的语法和编译成中间代码再运行的过程。但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NET windows网络框架的主角。并且C#成为ECMA与ISO标准规范。C#看似基于C++写成,但又融入其它语言如Delphi、Java、VB等。
微软C#语言定义主要是从C和C++继承而来的,而且语言中的许多元素也反映了这一点。C#在设计者从C++继承的可选选项方面比Java要广泛一些(比如说struts),它还增加了自己新的特点(比方说源代码版本定义)。但它还太不成熟,不可能挤垮Java.C#还需要进化成一种开发者能够接受和采用的语言.而微软当前为它的这种新语言大造声势也是值得注意的。目前大家的反应是:“这是对Java的反击。”
C#更象Java一些,虽然微软在这个问题上保持沉默。这也是意料中的事情,我觉得,因为Java近来很成功而使用Java的公司都报告说它们在生产效率上比C++获得了提高。
Java所带来的巨大影响和大家对它的广泛接受已经由工作于这种语言和平台之上的程序员数量明显的说明了(估计世界范围内共有两百五十万程序员使用Java)。由这种语言写成的应用程序的数量是令人惊讶的并已经渗透了每一个级别的计算,包括无线计算和移动电话(比如日本发明的Java电话)。C#能够在用户领域获得这样的礼遇吗?我们必须等待并观望,就象已经由SSI公司的CEO和主席Kalpathi S. Suresh指出来的那样,“我发现所有这些都是渐进的。如果C#不存在,我们总能回到Java或C和C++。这些都不完全是新技术;它们在更大的意义上来说只是大公司制造的市场噱头。我们必须给他们时间安顿下来看看这些是不是真的对IT工业有什么影响。”
2.3 SQL语言简单介绍
SQL是英文Structured Query Language的缩写,意思为结构化查询语言。
SQL语言的主要功能就是同各种数据库建立联系,进行沟通。按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言。SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。
目前,绝大多数流行的关系型数据库管理系统,如Oracle、Sybase、Microsoft SQL Server、Access等都采用了SQL语言标准。虽然很多数据库都对SQL语句进行了再开发和扩展,但是包括Select、Insert、Update、Delete、Creat以及Drop在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操作。
在众多的SQL命令中,select语句应该算是使用最频繁的。select语句主要被用来对数据库进行查询并返回符合用户查询标准的结果数据。select语句中位于select关键词之后的列名用来决定哪些列将作为查询结果返回。用户可以按照自己的需要选择任意列,还可以使用通配符“*”来设定返回表格中的所有列。select语句中位于from关键词之后的表格名称用来决定将要进行查询操作的目标表格。
2.4 SQL SERVSER数据库
SQL Server是由Microsoft开发和推广的关系数据库管理系统(DBMS),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,并于1988年推出了第一个OS/2版本。SQL Server近年来不断更新版本,1996年,Microsoft 推出了SQL Server 6.5版本;1998年,SQL Server 7.0版本和用户见面;SQL Server 2000是Microsoft公司于2000年推出的最新版本。Microsoft SQL Server 2000 是一个分布式的关系型数据库管理系统,具有客户机/服务器体系结构,采用了一种称为Transact-SQL的SQL语言在客户机和服务器之间传递客户机的请求和服务器的处理结果。支持XML(Extensive Markup Language,扩展标记语言。强大的基于Web的分析。支持OLE DB和多种查询。支持分布式的分区视图。SQL Server具有以下特点:是真正的客户机/服务器体系结构。图形化用户界面,使系统管理和数据库管理更加直观、简单。丰富的编程接口工具,为用户进行程序设计提供了更大的选择余地。SQL Server与Windows NT完全集成,利用了NT的许多功能,如发送和接受消息,管理登录安全性等。SQL Server也可以很好地与Microsoft BackOffice产品集成。具有很好的伸缩性,可跨越从运行Windows 95/98的膝上型电脑到运行Windows 2000的大型多处理器等多种平台使用。对Web技术的支持,使用户能够很容易地将数据库中的数据发布到Web页面上。SQL Server提供数据仓库功
能,这个功能只在Oracle和其他更昂贵的DBMS中才有。
2.5 WinForm
Windows窗体也称为WinForms,可以创建应用程序的用户界面,并使用任何一种.NET支持的语言编写应用程序的功能。
WinForms应用程序一般都有一个或者多个窗体提供用户与应用程序交互。窗体可包含文本框、标签、按钮等控件。大型WinForms应用程序有许多窗体,一些用于获取用户输入的数据,一些用于向用户显示数据,一些窗体会有变形、透明等其他效果甚至让你看不出他的真实面目。
Windows窗体的一些重要特点如下:
1、简单强大:Windows窗体可用于设计窗体和可视控件,以创建丰富的基于Windows的应用程序。
2、新的数据提供程序管理:数据提供程序管理提供易于连接OLEDB和ODBC数据源的数据控件,包括Microsoft SQL Server、Microsoft Access、Jet、DB2以及Oracle等。
3、安全:Windows窗体充分利用公共语言运行库的安全特性。这就意味着,一切都可以通过Windows窗体来实现,包括在浏览器中运行的不可信控件和用户硬盘上安装的完全可信的应用程序。
4、灵活的控件:Windows窗体提供了一套丰富的控件,并且开发人员可以定义自己有特色的新的控件。
方便的数据显示和操作:应用程序开发中最常见的情形之一是在窗体上显示数据。Windows窗体对数据库处理提供全面支持。可以访问数据库中的数据,并在窗体上显示和操作数据。
5、向导:向用户提供创建窗体、数据处理、打包和部署等的分布指导。
2.6 系统安全性分析
由于本系统采用的是WinForm+SQL SERVER所开发的系统,因此在安全性方面存在的隐患之一就是数据库数据的安全性。一方面由于本系统的登陆界面中,需要用户输入用户名和用户密码,是用户的唯一识别方式,不能存在安全上的隐患。另一方面由于本系统采用的数据库为SQL Server,其数据库文件在站点内部,它在数据的安全性方面存在一定的缺陷,当服务器受到攻击,重要的数据外泄,造成的后果是无法想象的。因此,为了增加安全性,必须对数据库中的重要信息进行加密以保证系统的安全。
为了保证数据库中数据的安全性可以对数据库敏感数据加密达到其安全性的目的。通过查阅相关书籍和资料,了解到md5加密算法是目前较为常用的一种加密算法。本系统也采用了md5实现对数据库中重要数据的加密。MD5的全称是Message-Digest Algorithm 5(信息-摘要算法),在90年代初由MIT Laboratory for Computer Science和RSA Data Security Inc的Ronald L. Rivest开发出来。此算法是不可逆的,所以它即既可用于客户端加密,也可用于服务器端加密。它的作用是让大容量信息在用数字签名软件签署私人密匙前被"压缩"成一种保密的格式(就是把一个任意长度的字节串变换成一定长的大整数)。
3 系统分析
3.1 客户信息模块系统设计的任务
系统设计工作应该自顶向下地进行。首先设计总体结构,然后再逐层深入,直至进行每一个模块的设计。总体设计主要是指在系统分析的基础上,对整个系统的划分(子系统)、机器设备(包括软、硬设备)的配置、数据的存贮规律以及整个系统实现规划等方面进行合理的安排。
系统设计的任务是:在系统分析提出的逻辑模型的基础上,科学合理地进行物理模型的设计。系统模型分为逻辑模型和物理模型。 逻辑模型主要确定系统做什么,在系统分析阶段提出而;物理模型则主要解决怎样做的问题,系统分析阶段提出在系统设计阶段提出。
系统设计原则主要有:
1、系统性;系统是作为统一整体而存在的,因此,在系统设计中,要从整个系统的角度进行考虑,系统的代码要统一,设计规范要标准,传递语言要 尽可能一致,对系统的数据采集要做到数出一处、全局共享,使一次输入得到多次利用。
2、灵活性;为保持系统的长久生命力,要求系统具有很强的环境适应性,为此,系统应具有较好的开放性和结构的可变性。在系统设计中,应尽量采用 模块化结构,提高各模块的独立性,尽可能减少模块间的数据耦合,使各子系统间的数据依赖减至最低限度。这样,既便于模块的修改,又便于增加新的内 容,提高系统适应环境变化的能力。
3、可靠性;可靠性是指系统抵御外界干扰的能力及受外界干扰时的恢复能力。一个成功的管理信息系统必须具有较高的可靠性,如安全保密性、检错 及纠错能力、抗病毒能力等。
4、经济性;经济性指在满足系统需求的前提下,尽可能减小系统的开销。 一方面,在硬件投资上不能盲目追求技术上的先进,而应以满足应用需要为前提;另一方面,系统设计中应尽量避免不必要的复杂化,各模块应尽量简洁, 以便缩短处理流程、减少处理费用。
3.2 客户信息展示模块系统功能结构图
本网站主要是实现了客户管理、拜访管理及客户商品管理三大功能。客户管理又细分为客户管理及单位管理两个子模块。这两个子模块分别对客户及单位信息进行增删改查的操作。增加的单位信息可以在客户信息中的下拉列表中找到。拜访管理及客户商品管理分别实现了对各自信息的增加删除操作。
具体功能结构图如下所示:
企业客户关系管理系统
资料管理
我方信息管理
用户管理
帮助
区域
信息
管理
竞争对手管理
客户资料管理
基本信息管理
货物资料管理
重大历史历程
更改密码
用户管理
员工资料管理
设置权限
重新登入
关于我们
退出系统
启用记事本
启用word
启 用
Excel
图3-1 系统功能结构图
3.3 客户信息系统展示模块系统功能详细设计
通过对本系统的分析,该系统主要分四个模块
模块主要实现的功能有:
1、通过“用户管理”菜单中的“用户管理”模块添加操作员,“设置权限”模块为操作员分配操作权限,“更改密码”模块修改密码。
2、通过“我方信息管理”菜单中的菜单项添加,修改,删除本单位基本信息资料,员工信息资料,货物资料管理信息资料和添加重大历史历程。
3、通过“资料管理”菜单中的菜单项添加客户资料信息,区域管理和竞争对手信息。
4、本系统提供了很多辅助功能。在“帮助”菜单中可以直接启动记事本、word、Excel等。其中“水平平铺”和“重直平铺”的效果,需要在打开两个以上模块的情况下实现。
3.4 系统业务流程图
系统设计以前,要对系统需求进行归纳分析,查找出所有的业务主角,确定业务主角后,每个主角的相关活动及流程应清晰地制定出来,最终设计出逻辑视图、用户界面示意图。在进行业务流程设计,需要注意以下事项。
调查用户网络环境和配置,使系统能够具有合理可行的系统架构。
调查用户偏好和技能水平,这将直接影响到项目开发的深度和用户界面的设计。
预测并制定系统的性能指标,为编写测试计划提供依据。
以下是本文当中使用的数据流图图例,见图3-2。
外部实体
处理过程
数据流
数据存储
图3-2 数据流图图例
本系统的业务流图如下:
用户管理
管理员
资料管理
我方信息管理
用户管理
帮助
退出系统
错
对
验证信息
图3-3 系统业务流图
3.5 数据字典
数据字典是对流程图加以补充说明的工具,为系统管理员提供了数据项的综合信息。下面将列出管理系统中的几个重要数据元素。
用户信息管理模块数据字典部分数据条目。
表3-1 用户外部实体
名称:用户 总编号:1-001
说明:个人信息维护人员 编 号:001
输入数据流:个人信息
输出数据流:个人信息
表3-2 管理员外部实体
名称: 管理员 总编号:1-002
说明:系统管理用户人员 编 号:002
输入数据流:用户信息
输出数据流:用户信息
表3-3 查看客户信息处理过程
名称:查看客户信息 总编号:2-002
说明:管理员对客户信息进行查看 编 号:P2.1
输入数据流:客户信息
输出数据流:客户信息
表3-4 编辑客户信息处理过程
名称:编辑客户信息 总编号:2-002
说明:用户对客户的信息进行编辑 编 号:P2.2
输入数据流:客户信息
输出数据流:客户信息
表3-5 编辑用户信息处理过程
名称:编辑客户信息 总编号:2-002
说明:管理员对客户注册信息进行编辑 编 号:P2.4
输入数据流:客户信息
输出数据流:客户信息
表3-6客户信息数据存储
名称:客户信息 总编号:3-001
别名:已增加的客户信息 编 号:D1
数据流来源:客户名称,所属行业,客户等级等
关键字:客户名称
4 系统设计
4.1 客户商品展示模块系统数据库设计
4.1.1 数据库设计概述
数据库设计是在给定的DBMS、操作系统和硬件环境下,如何表达用户的需求,并将其转换为有效的数据库结构,构成较好的数据库模式,这个过程称为数据库设计。数据库及其应用系统开发的全过程可分为两大阶段:数据库系统的分析与设计阶段;数据库系统的实施、运行与维护阶段。
数据库设计有两种不同的方法:以信息需求为主,兼顾处理需求,这种方法称为面向数据的设计方法;以处理需求为主,兼顾信息需求,这种方法称为面向过程的设计方法。数据库设计的3个特点:
1、反复性(Iterative);
2、试探性(Tentative);
3、分步进行(Multistage)。
数据库设计的过程(六个阶段):
1、需求分析阶段;
2、概念结构设计阶段;
3、逻辑结构设计阶段;
4、数据库物理设计阶段;
5、数据库实施阶段;
6、数据库运行和维护阶段。
4.1.2 数据库设计规则
数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构可以提高数据库存储效率,保证数据的完整性和一致性。设计数据库系统时应充分了解用户各个方面的需求,包括现有系统的需求以及将来可能增加的需求在信息世界中,信息从客观事物出发流经数据库,通过决策机构最后又回到客观世界,信息的这一循环经历了三个领域:信息世界,数据世界,现实世界。现实世界的事物反映到人的头脑中,人的大脑对它有个认识过程,经过分析(选择、命名、分类等)进入信息世界。这些信息再进一步加工、编码,然后进数据世界,而软件系统的开发工作需要考虑这两个方面的问题,也就是要考虑系统开发所需要的数据,以及如何对这些数据进行操作。这两个问题贯穿了整个软件系统的开发过程,这也就是数据库的设计问题,软件设计的一个核心。
数据库设计的主要任务是针对一个给定的应用环境,在给定的硬件环境、操作系统、以及数据库管理信息系统等软件环境下,创建一个性能良好的数据库模式,建立数据库及其应用系统,使之能有效地收集、存储、操作和管理数据,满足用户地各类需求。数据库设计通常是在一个通用的DBMS支持下,即利用现成的DBMS作为开发的基础。
4.2数据库的概念设计
根据系统的特点,可绘制如图4-1所示的系统ER图。
管理员信息
名称
密码
id
图4-1 系统管理员ER图
客户信息
客户名称
客户编号
客户等级
客户来源
所属行业
客户类别
所在区域
联系电话
Email
图4-2 客户ER图
4.3 数据库的物理设计
物理设计主要是指把逻辑设计当中的关系模式图在数据库中以基本表的形式建立出来。该系统的涉及到的表如下:
1、客户信息表包括:客户编号(主键),客户名称,客户等级,客户来源,所属行业,客户类别,所在区域,联系电话,传真号码,邮政编码,联系地址,E-mail,备注。
表4-1 客户信息表(dbo.tb_ClientInfo)
列名
数据类型
是否为空
注释
*Clientid
Varchar(20)
否
客户编号
Cname
Varchar(50)
是
客户名称
Cstep
Varchar(20)
是
客户等级
Croot
Varchar(20)
是
客户来源
Ctrade
Varchar(50)
是
所属行业
Ctype
Char(10)
是
客户类别
Carea
Varchar(50)
是
所在区域
Cphone
Varchar(20)
是
联系电话
Cfax
Varchar(20)
是
传真号码
Cpostcode
Bigint
是
邮政编码
Caddress
Varchar(50)
是
联系地址
Cemail
Varchar(50)
是
E-mail
Cremark
Varchar(1000)
是
备注
2、员工信息表包括:编号(主键),姓名,性别,生日,工作日期,学历,所在部门,当前职务,类别。
表4-2 员工信息表(dbo.tb_Employee)
列名
数据类型
是否为空
注释
*Eid
Varchar(20)
否
编号
Ename
Varchar(20)
是
姓名
Esex
Char(4)
是
性别
Ebirthday
Varchar(20)
是
生日
Ewdate
Varchar(20)
是
工作日期
Ediploma
Char(10)
是
学历
Edepartment
Varchar(50)
是
所在部门
Eposition
Varchar(20)
是
当前职务
Etype
Varchar(20)
是
类别
3、资本信息管理表包括:企业名称(主键),法人代表,电话,传真号码,邮政编码,联系地址,E-mail,企业网址,备注。
表4-3 基本信息管理表(dbo.tb_CInfo)
列明
数据类型
是否为空
注释
*Cname
Varcha
展开阅读全文