某商业集团 数据库设计2.docx
《某商业集团 数据库设计2.docx》由会员分享,可在线阅读,更多相关《某商业集团 数据库设计2.docx(9页珍藏版)》请在冰豆网上搜索。
某商业集团数据库设计2
---某商业集团的销售管理数据库设计
班级:
10级现代教育技术
小组成员:
吴道芬、王群、朱先芹、杨芳、田永香
指导教师:
李孝攀
2012年1月1日
目录
✧系统概述........................................................................................
✧需求分析.........................................................................................
✧概念结构设计.................................................................................
✧逻辑设计.........................................................................................
✧物理设计.........................................................................................
✧实施运维.........................................................................................
系统概述
数据库设计(DatabaseDesign)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。
在数据库领域内,常常把使用数据库的各类系统统称为数据库应用系统。
对于一个销售管理系统,它具有一定的完整性,统一性,真实性等等。
数据库的具体实施运行,都必须从数据库的用户需求开始,只有了解了用户的所需,才能做的更好。
通过各种资料的调查和收集,充分了解用户需求。
需求分析
第一部分用户的需求
本系统的最终用户是客户,我们从商业个界可获得相关的图表资料、文字资料及其其他的详细由于的信息,在日常生活中,根据相关查询、调查,可得到以下实际要求:
1.商业集团的组织机构情况
与销售管理的商业组织机构有:
商品、商店和职工。
商业集团的管理活动围绕着各种管理进行管理。
合同管理:
管理公司与供应商及客户之间的合同,提供了合同条款文本管理、合同权益与返利管理等功能,特别是合同权益与返利管理,现实业务中返利形式多种多样,例如计算返利时可
以按照销售额、销售数量、返款额、返款数量等多种基数参与计算,返利率即可以单纯的几个点计算,也可以达到某个台阶返几个点等多种形式进行计算,再比如按照计算返利的周期划分还有月返、季返、年度返、合同周期返等多种形式,以前公司在这个方面都是靠手工理单据进行计算,新的系统通过一个巧妙的数学模型提供了多种按规模返、按基数返等目前贸易中常见的近百种返利模型形式,系统可以自动按合同汇总订单计算各种返利,从而可为财务部门向供应商争取公司应有的权益提供的计算依据。
促销模型:
也是通过建模的方式,可支持目前商家所采取的所有可能的促销形式。
资金计划管理:
通过资金计划管理可以有效控制各核算单元、部门预算、费用和支出。
例如采购部门通过资金计划的分解,采购员在下订单的时候要受到资金计划的约束控制,系统采用黄线控制的方法,在资金支出超出预算的情况下提出警告。
职工管理:
一个商店由一个管理者管理,管理者管理着多个职工。
2.商业集团日常业务活动
商店
一个新产品出来,要进行宣传,打广告等活动,要举行某个
活动,就要有相关负责人,组织活动;具体活动的地点、时间、地点和节目的主办人等。
对商品的买卖方法,具体措施;如打折优惠,购买金额满多少减多少等等。
3.用户对系统要求
由于系统的主要管理的对象是商店,商品和职工,所以信息要求为:
A.商店信息
商店的基本信息主要包括:
商店编号、商店名、地址等。
B.商品信息
商品的基本信息主要包括:
商品号、商品名、规格和单价等。
C.职工信息
职工的基本信息主要包括:
职工编号、姓名、性别和业绩等。
第二部分、数据字典
商业集团的销售管理系统各实体及联系的数据字典:
1.商店数据字典
属性名
存储代码
类型
长度
备注
商店编号
Sno
INT
4
商品编号
商店名
Sname
CHAR
20
商店的名字
地址
adderss
CHAR
20
商店所在地址
2.商品数据字典
属性名
存储代码
类型
长度
备注
商品号
Cno
INT
6
商品编号
商品名
Cname
CHAR
20
商品名字
规格
SP
CHAR
10
商品规格
单价
UN
INT
4
商品单价
3.职工数据字典
属性名
存储代码
类型
长度
备注
职工编号
Workersno
INT
6
职工编号
姓名
Wname
CHAR
8
职工姓名
性别
sex
CHAR
2
职工性别
业绩
deed
CHAR
10
职工成绩
概念结构设计
1.商店管理系统分E-R图
2.商品销售管理系统分E-R图
3.职工管理系统分E-R图
4.某商业集团的销售管理系统总E-R图
逻辑设计
一、以下是商业集团的管理系统的关系模型
商店(商店编号,商店名,地址)
职工(职工编号,姓名,性别,业绩,商店编号,聘期,月薪)
商品(商品号,商品名,规格,单价)
销售(商店编号,商品号,月销售量)
聘用(商店编号,职工编号,聘期,月薪)
二、性能优化:
1.使用触发器当往商业集团管理系统中插入一些数据时,在查询时可以大幅度提高查询速度。
如果不在乎空间则可以用空间换效率。
2..通过建立QUERY视图,把商店查询、商品查询、职工查询三种查询方法统一起来。
更加有利的利用起来,找到你做想要的信息!
三、数据完整性约束
1.完整性实现机制:
实体完整性:
(1)主键、非空性
在商店这张表中,我们可以看出,商店编号是主键,我们可以根据商店编号就可以找到相应的商店,一个商店的商店编号是确定唯一的,因此商店这张表中,商店编号是主键。
(2)外键
在职工这张表中,除了上面我们说的主键职工编号以外,还有外键商店编号,对于同一属性,我们知道,它可以是主键,也可以是外键,这就是一个明显的例子。
我们设置外键,更加确保了数据的唯一性和正确性。
参照完整性:
父表中删除数据:
级联删除;受限删除;置空值
父表中插入数据:
受限插入;递归插入
父表中更新数据:
级联更新;受限更新;置空值
DBMS对参照完整性可以有两种方法实现:
外键实现机制(约束规则)和触发器实现机制
用户定义完整性:
NOTNULL;CHECK;触发器
2.用约束而非商务规则强制数据完整性
采用数据库系统实现数据的完整性。
这不但包括通过标准化实现的完整性而且还包括数据的功能性。
在写数据的时候还可以增加触发器来保证数据的正确性。
不要依赖于商务层保证数据完整性;它不能保证表之间(外键)的完整性所以不能强加于其他完整性规则之上。
3.强制指示完整性
在有害数据进入数据库之前将其剔除。
激活数据库系统的指示完整性特性。
这样可以保持数据的清洁而能迫使开发人员投入更多的时间处理错误条件。
4.使用查找控制数据完整性
控制数据完整性的最佳方式就是限制用户的选择。
只要有可能都应该提供给用户一个清晰的价值列表供其选择。
这样将减少键入代码的错误和误解同时提供数据的一致性。
某些公共数据特别适合查找:
国家代码、状态代码等。
5.采用视图
为了在数据库和应用程序代码之间提供另一层抽象,可以为应用程序建立专门的视图而不必非要应用程序直接访问数据表。
这样做还等于在处理数据库变更时给你提供了更多的自由。
物理设计
一、关系模式存取方式选择
商业集团的销售管理系统系统是一个多用户共享系统,对同一个关系要建立多条存取路径才能满足多用户的多种应用要求。
数据库管理系统一般提供多种存取方法。
常用的存取方法有三类:
一是索引方法,目前主要是B+树索引方法;第二类是聚簇方法,第三类是Hash方法。
B+树索引是数据库中经典的存取方法,使用最普遍。
我们的数据库管理信息系统在系统建立过程中自动创建了B+树索引。
二、确定数据库的存储结构
确定数据库物理结构主要指确定数据的存放位置和存储结构,包括确定关系、索引、聚簇、日志、备份等的存储安排和存储结构,确定系统配置等。
三、评价物理结构
在开发销售管理系统的过程中,我们综合考虑了系统的时间效率、空间效率、维护代价和各种用户要求进行了权衡。
评价物理数据库的方法完全依赖于所选用的RDBMS,而我们采用的是KingbaseES5.0.,这种评价完全取决于该数据库管理系统的评价方法,主要从定量估算各种方案的存储空间和维护代价入手,对估算结果进行权衡、比较。
实施运维
一、数据的载入和应用程序的调试
根据以上需求分析、概念设计、逻辑设计、物理设计等各个阶段的分析与设计,我们数据库应用设计五人组进行了系统的开发,主要采用JSP网站开发技术,系统运行在KingbaseES5.0之上,应用服务器为Tomcat5.0之上。
二、数据库的试运行与维护
数据库语言SQL语言
数据库中有三个实体集。
一是“商店”实体集,属性有商店编号、商店名、地址等;二是“商品”实体集,属性有商品号、商品名、规格、单价等;三是“职工”实体集,属性有职工编号、姓名、性别、业绩等。
CREATEDATABASES
USES
CREATETABLESD(SNOINTCHAR(4)PRIMARYKEYNOTNULL,
SNAMECHAR(20),
ADDRESSCHAR(20));
CREATETABLESH(CNOINTCHAR(6)PRIMARYKEYNOTNULL,
CNAMECHAR(20),
SPCHAR(10),
UNINTCHAR(4));
CREATETABLEWORKERS(WORKERSNOINTCHAR(6)PRIMARYKEYNOTNULL,
WNAMECHAR(8),
SEXCHAR
(2),
DEEDCHAR(10));
三、数据库的转储恢复
对数据库的存储,实施还是运行,对数据库而言,都是相当重要的,对数据库德转存恢复也极为重要。
因此我们必须做好数据库的转储恢复。
四、小结
通过对本次数据库的设计,我们知道了数据库设计的一般步骤包括:
系统概述、需求分析、概念设计、逻辑设计、物理设计和系统实施与运维等。
对各个步骤的具体要求和设计,有了一个更深刻的了解和认识。
相信在以后的学习中,把数据库的设计做得更好!