综合运用各章的知识,完成小型数据库系统底层的全面设计,初步掌握数据库系统开发的基本方法。
1、需求分析,画出e-r图(实验前完成)。
2、将er图转换为关系(实验前完成)。
3、建立数据库表,设置实体完整性、域完整性和参照完整性。
4、建立视图。
小组实验人员名单:
学号姓名:
学号姓名:学号姓名:
学号姓名:学号姓名:
课程设计题目: 图书销售管理系统。
课程设计题目推荐:
1) 图书借阅系统。
2) bbs系统。
3) 长途客车售票系统。
4) 火车售票系统。
5) 超市收银系统。
6) 库房管理系统。
7) 网吧电脑管理系统。
8) 人事管理系统。
9) 学生缴费系统。
10) 宿舍管理系统。
11) 电子商务系统。
12) 户籍管理系统。
13) 旅馆客房管理系统。
14) 进销存管理系统。
15) 固定**收费系统。
16) 设备管理系统。
17) 新生注册系统。
18) 医院住院部管理系统。
19) 书店图书管理系统。
20) 房产管理系统。
21) 活期存款管理系统。
课程设计题目: 图书销售管理系统(范例)
内容: 建立某中小型书店图书销售管理信息系统的数据库。
1. 基本需求分析。
1)组织结构。
对组织结构的分析有助于分析业务范围与业务流程。书店的组织结构如图1所示。
图1 书店组织结构简图。
其中,书库是保存图书的地方;购书/服务部负责采购计划、读者服务、图书预订等业务;售书部负责图书的销售。财务部负责资金管理;人事部负责员工管理与业务考核。
2)业务分析。
对于信息处理系统来说,划分系统边界很重要,即哪些功能由计算机来完成,哪些工作在计算机外完成。这些要通过业务分析确定。同时,业务流程中涉及的相关数据也通过业务分析得到归类和明确。
在业务分析的基础上,确定数据流图和数据字典。
本系统主要包含以下业务内容。
进书业务。事先采购员根据订书单采购图书。然后将图书入库,同时登记相应的图书入库数据。
本项业务涉及的数据单据和**有:进书单(包括进书单编号、日期、金额、经手人等)和进书单细目(一个进书单可能有若干种图书。进书单的细目数据包括每种图书的信息、定价、进价或折扣,数量),以及书库账本(图书信息、库存数量、**等)。
售书业务。售书员根据读者所购图书填写售书单(如图2所示)。同时,修改库存信息。
本项业务涉及和产生的数据**有:售书单(包括售书单编号、售书日期、金额、员工)、售书细目(一个售书单可能有若干种图书。售书细目包括该次售书的书籍编号、售出数量、折扣、售出**等),以及书库账本。
图2 售书单样式。
图书查询服务业务。根据读者要求,提供本书店特定的图书及库存信息。
本项业务涉及的主要数据是书库账本。
综合管理业务。包括进书信息、销售信息、库存信息的查询、汇总和报表输出。
本项业务涉及所有的进书数据、销售数据和库存数据等。
3)处理的数据。
上面的分析将本系统的业务归纳为4项。在业务分析的基础上,应该画出系统的数据流图。整个系统的分层数据流图将揭示一个系统内全部的数据项、数据结构、数据存储以及对数据的加工处理功能。
在此基础上就可以建立系统的数据字典。本书不讨论数据流图和完整的数据字典规范等内容,仅对最后建立数据库所需要的数据进行分析说明。
在上述4项业务中涉及到的业务数据包括:进书数据、库存数据、销售数据。在这些数据中又涉及到图书数据、员工数据等,而图书数据与出版社有关,员工与部门有关。
因此,将所有数据进行归类分析,书店销售管理信息系统要处理的数据应该包括:
企业部门信息(组成:部门编号、部门名、办公**);
员工信息(组成:工号、姓名、性别、生日、职务、所属部门、薪金);
出版社信息(组成:出版社编号、出版社名称、地址、联系**、联系人);
基本图书信息(组成:图书编号、isbn、书名、作者、出版社、版次、出版日期、定价、图书类别、备注);
进书单及细目(组成:进书单号、日期、、金额、业务员);
售书单及细目(组成:售书单号、日期、、金额、业务员);
书库账本(组成:图书编号、库存数量、平均进价折扣、备注)。
这些就是书店销售管理信息系统要处理的各种对象,每一种对象由括号内的属性组合在一起来描述。这些属性有的是基本数据项,有的是数据项集合(由“”括起来),数据项集合要做进一步的说明。
例如,“”由“序号、、进价或折扣、数量”等属性组成;“”由“序号、图书编号、售价或折扣、数量”等属性组成。
当所有数据对象都归纳完毕,就可以编制数据字典了。在数据字典中,要对所有这些数据项、数据项集合等的命名、取值方式和范围、作用等进行明确而无异义说明。
4)处理功能分析。
数据字典不仅记载所有数据的详情,也要详细记载所有对数据的处理功能。
进书业务。当进书业务发生时,将所进图书入书库,然后存储进书单及细目数据,同时根据进书单登记图书库存数据。
当登记图书库存数据时,可能有两种情况:新图书或已有图书入库。
对于新图书,本业务要将图书的完整信息记载下来,然后记载图书进价和数量;
已有图书是指同一种书。但同一种书可能有版本方面的区别。为简单起见,规定:
“isbn号”与“版次”相同的就是同一种书,图书编号相同。对于已有图书,将本次进书数加到该图书的库存数中即可,但本次的进价折扣与以前库存的该书的折扣可能存在差异。为了便于计算成本和售书收益,入库已有图书时,这里采用的方法是:
将已有图书占用的资金和本次入库的资金加在一起,然后重新计算一个平均**折扣。因此,书库中该图书的**折扣是当前所有库存图书占用资金除以当前库存数量后计算的折扣。
售书业务。根据读者所购图书的售书单存储售书单及细目数据,这是售书的业务数据。同时,修改图书的库存信息。
图书查询服务业务。查询服务的输入是读者所提要求,输出是相关图书的库存信息。为方便读者,可以针对书名、isbn、作者、版次、出版社提供单个或多条件组合查询。
综合管理业务。管理人员需要定期或不定期汇**计或查询进书信息、销售信息、库存信息,并按照管理要求制作业务报表。
通过进书单及细目可以对进书业务进行查询、统计汇总和报表输出。
通过售书单及细目可以对售书业务进行查询、统计汇总和报表输出。
通过库存账本可以对图书库存情况进行查询、统计汇总和报表输出。
2. e-r模型分析设计。
1)基本实体和联系。
首先确定实体类别以及它们各自的属性构成,指出实体标识符,并尽量规范属性名,避免同名异义或异名同义。确定实体后,就可以分析实体之间的联系。
可以很容易确定,部门、员工、出版社、图书、书库是不同的实体。
部门的属性:部门号、部门名、办公**;
员工的属性:工号、姓名、性别、生日;
部门与员工发生聘用联系。这里规定一个员工只能在一个部门任职,它们是1:n联系。当联系发生时,产生职务、薪金属性。
出版社属性:出版社编号、名称、地址、联系**、联系人;
图书属性:图书编号、书名、作者;
出版社与图书发生“出版”联系。一本图书只能在一家出版社出版。这是1:n联系。当联系发生时,产生isbn、版次、出版日期、定价、图书类别、备注等属性。
由员工购进图书,所以进书业务是员工与图书发生联系的结果。一名员工可以进多种图书,一种图书可由多个业务员购进,所以它们是m:n联系。
“进书”联系产生“进书单”属性,进书单本身又由“日期、图书细目、数量、金额”等多个属性构成,所以是多值的组合属性。
与进书业务类似,售书业务是员工将图书售给读者。本系统不保存读者信息,所以售书是员工与图书发生联系,“售书单”是“售书”联系的属性。
当图书购进后,图书要入书库保存。书库与图书发生“保存”联系。这里假定图书是集中式保管,只有唯一一个书库,所以书库不需要标明属性。
书库与图书之间是1:n联系。“保存”联系的属性有数量、存书的**折扣、存放备注。
2) 需要解决的问题—售书与进书。
以售书为例,当员工在书店售书时,员工就与图书发生“售书”联系。由于一个员工可以售出多种图书,一种图书可以从多名员工那里售出,因此员工与图书的“售书”联系是m:n。
在实际售书时,由于一名读者可能购买多种图书,所有这些图书构成一张完整的售书单,所以“售书单”是售书联系的属性,e-r图如图3所示,图中略去员工和图书的实体属性。
图3 图书销售联系的e-r图。
仔细分析“售书单”属性,可以发现,售书单不是一个单一的数据,它是由多项内容构成,如日期、图书种类和数量、金额等属性。
对于属性来说,无论是实体属性还是联系属性,根据属性结构特点可以分为原子属性或组合属性。原子属性就是属性是一个不可分割的整体,例如员工的“性别”、“年龄”等。但有些属性是由几个子属性组合起来的。
例如,对于员工“薪金”,如果要分解为“基本工资”、“岗位工资”、“业绩提成”等,则成为组合属性。因此,有些属性到底是原子属性还是组合属性,要根据设计的规定。象“姓名”,我国一般是作为一个整体,但西方则分为“first name”和“last name”。
而这里的“售书单”属性,很明显只能是组合属性。
从属性的取值情况可以分为单值属性或多值属性。单值属性就是属性只有一种取值,如员工性别、生日等;而多值属性就是该属性可能有多种取值。例如,如果允许员工兼职,则他的职务可能就不只一个值。
另外,若在员工中增加“学位”属性,有的员工可能就有几个学位。
假设在员工实体中增加一个“社会关系”属性,它由“姓名、年龄、关系、地址”组成,所以是组合属性,同时,由于一个员工可能有多个社会关系,则对员工来说,该属性又是多值属性。前述的“售书单”属性,由于一个售书单内部可包含多种图书,所以它也是多值属性。
当实体或联系存在多值、组合属性时,对e-r图的表述带来了一定的困难。因为e-r图将来将转化为关系模型,而关系中属性必须是原子的,因此在e-r图中必须有专门的处理。
对于单值的组合属性,一般将组合属性的子属性分解为独立属性。如“薪金”,若要了解其构成,就可变成一个实体。
而对于多值属性,一般会将这个属性变成实体来对待。这样,它与原实体的关系就变成实体间的联系。例如,将图2中的“售书单”当作实体,该实体分别与“员工”和“图书”实体发生联系。
一名员工可负责多份售书单,而一份售书单只由一名员工负责,他们之间是1:n联系;一份售书单中可包含多种图书,一种图书可由不同的售书单售出,他们之间是m:n联系。
这样,图3所示的e-r图就变成图4的样子。
数据库库课程设计
目录。引言11 开发环境1 1.1 硬件环境1 1.2 软件环境1 1.2.1 sql server 2005 delphi7简单介绍2 2 需求分析3 2.1 信息需求3 2.2 功能需求3 2.3 安全性与完整性要求3 3 概念结构设计3 4 逻辑结构设计4 5 数据库实现6 5.1 创建数据库...
数据库课程设计总结数据库课程设计个人总结
数据库课程设计个人总结 4班6组赵 王婆卖瓜时间过了,言归正传吧。凡是都要有个总结,以下便是我在这个课程设计中的一点心得。首先我分析一下我们组任务顺利完成的成功之处并总结一些经验,供以后反省参考用。凡事预则备,不预则废。这是我的座右铭,也是我深有感悟的几句古语之一。在这个项目的开始阶段,老师便让我们...
数据库课程设计
简单pos系统。班级 计科二班 姓名 韩田田 学号 201010510237 目录。前言。销售管理作为零售企业现代化管理不可缺少的组成部分,日益受到人们的重视。传统销售模式以及销售管理体系和机制,已经越来越难以适应零售企业现代化管理的需求。pos point of sales,销售终端的英文缩写 是...