图书销售系统的数据库设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
图书销售系统的数据库设计
场景:某图书销售管理公司,随着业务的扩展,需要建立一个图书销售系统来进行图书销售管理活动。
要建立一个图书销售系统,首先要设计其数据库,用来存取和管理图书信息。以下是按数据库设计的六个步骤,对该图书销售系统所需的数据库进行详细设计。
第一步:需求分析(次重点)
1.在图书销售管理系统中,经过调查该图书销售管理公司,得到的用户需求如下:
(1)新书信息录入,以添加系统中所销售图书的信息。
(2)新书列表,以方便用户得到新进图书的信息。
(3)书目分类,以便于用户查看对应分类中相关图书信息。
(4)图书搜索功能,以方便用户按书名、ISBN、主题或作者搜索相应图书信息。
(5)用户注册功能,以方便保存用户信息,并在相应功能中快速应用用户信息。
(6)用户登录功能,以方便用户选购图书,并进行结算和配送。
(7)订单管理功能,以方便对图书的销售情况进行统计、分析和配送。
(8)系统管理员登录功能。
2.图书销售管理系统的数据流图设计
根据用户的功能需求,对其使用结构化分析方法(SA方法),进一步对需求进行分析整理,得到该系统的数据流图如下:
3.图书销售管理系统的数据字典
根据数据流图中所涉及的信息,并对信息进行的分析,确定出所有数据项的描述内容,其中主要分数据项名称、类型、长度以及值范围,如下表:
数据项名称类型长度范围说明备注
书号字符50 唯一标识每本图书
根据对数据流图中信息的分析,在数据项描述的基础上确定出所有数据结构的描述,主
根据对数据流图数据流向的分析,确定所有数据流的描述,主要有数据流名称、含义说明、
第二步:概念结构设计(重点)
将数据字典中所涉及的数据项和数据结构抽象为数据库的概念结构,并有E-R 图描述出来。这里采用自底向上的概念结构设计方法,分两步设计:
第一步是抽象数据并设计局部视图,即分E-R 图
首先将需求阶段分析的用户的功能,分为几个模块(图书管理模块,订购图书模块,销售图书模块)。
然后针对每个模块具体设计分E —R 图,将需求分析阶段得到的数据,利用分类的数据抽象方法将同一类型的数据抽象为实体集,利用聚集的数据抽象方法得到每个实体集的属性,并确定实体集之间的联系(1:1,1:
n ,m :n )及每个实体集的主码。
(1) 订购图书的局部E-R 图
(2)管理图书的局部E-R图
(3)销售相关的局部E-R图
第二步集成局部视图,得到全局概论结构,即合并分E-R图,生成总E-R图生成总E—R图,合并时消除各个分E—R图的冲突和不必要的冗余。
三、逻辑结构设计(重点)
1.在概念结构设计的基础上设计数据库的逻辑结构,把相应的E—R图按一定的转换规则(教材53页有转换规则)转化为关系模式
客户(客户号,客户名,密码,邮箱,地址,电话,身份证)
图书(ISBN号,书名,单价,作者,出版社,分类ID)
分类(分类号,类名)
管理员(员工号,姓名,身份证号)
订单(订单号,客户号,数量,总价,日期, 是否送货,送货人,送货地址)
--这个关系模式是由“结账”这个一对多联系合并到多端“订单”实体集转化的
详细订单(客户号,书号,数量)--这个关系模式是由“预购”这个多对多的联系转化的
2.用3NF等方法对每个关系模式进行规范化设计后,如下:
用户(用户号,客户名,密码,邮箱,地址,电话,身份证,权限)
图书(ISBN号,书名,单价,作者,出版社,分类ID,用户号)
分类(分类号,类名)
订单(订单号,数量,总价,日期)
详细订单(客户号,书号,数量,小计价钱)
销售(订单号,用户号,是否送货,送货人,送货地址)
四、物理设计
按相应的关系模型,对数据库进行物理设计,这里主要设计相关的表结构和表间的关系1.相关的表结构:
(1)用户信息表
(2)图书信息表
(3)图书分类表
(4)订单表
(5)详细订单表
(6)销售信息表
五、数据库的实施
按物理设计的要求创建数据库,表,并录入数据,并对数据库进行试运行,进行各种操作检测
六、数据库的运行和维护
试运行合格后即可交与客户投入正式运行