数据库概念结构设计和逻辑结构设计举例
- 格式:doc
- 大小:77.00 KB
- 文档页数:6
一、数据库设计的一般流程1.概述包括课程设计选题、项目背景、课程设计报告编写目的、课程设计报告的组织等内容。
2.课程设计任务的需求分析2.1设计任务2.2设计要求2.3需求描述的规范文档3.概念结构设计3.1概念结构设计工具(E-R模型)3.2XXX子系统(局部)3.2.1子系统描述3.2.2分E-R图3.2.3说明3.3YYY子系统3.3.1子系统描述3.3.2 分E-R图3.3.3 说明……3.X 总体E-R图3.X.1 E-R图的集成3.X.2 总体E-R图4.逻辑结构设计4.1关系数据模式4.2视图的设计4.3优化5.数据库物理设计与实施5.1数据库应用的硬件、软件环境介绍5.2物理结构设计5.3 索引的设计5.4建立数据库5.5 加载数据库测试数据6.数据操作要求及实现6.1数据查询操作6.2数据更新操作6.3数据维护操作6.4其他7.数据库应用系统的实现8.设计心得体会9.参考文献二、例子:学生选课管理系统在高校教学管理系统中,学生选课管理是很重要的功能模块。
需求分析:该系统应该能管理学校的教师信息、学生信息、专业信息、学校开设的所有课程信息、学生选修课程的信息等。
选课系统主要满足三类用户的要求,这三类用户分别是教务处的系统管理员、教师和学生。
他们所具有的操作权限以及操作内容是不同的。
具体的需求分析如下:系统管理员1)维护学生的个人基本信息,实现对学生个人信息的增、删、改等。
学生信息包括…2)维护教师的个人基本信息,实现对教师个人信息的增、删、改等。
教师信息包括…3)维护课程的个人基本信息,实现对课程个人信息的增、删、改等。
课程信息包括…学生用户1)查询和修改个人信息。
2)进行选课操作3)学生可以查看自己所选课程信息及以前所选课程的成绩信息。
教师用户1)查询和修改个人信息2)课程结束后,登记成绩3)教师可查看自己的教学安排。
数据库概念结构设计:概念结构设计的常用工具是ER图。
分下面几步完成。
第1章数据库概述数据库技术是数据管理的技术,是计算机应用从科学计算进入数据处理的一个划时代的转折。
近年来数据库技术发展迅速,各种应用领域对数据管理的需求越来越多,各种信息系统都离不开数据库的支持。
因此,数据库已成为信息社会的重要基础设施。
数据库技术是一门综合性的软件技术,是使用计算机进行各种信息管理的必备知识。
数据库技术所研究的问题就是如何科学地组织和存储数据,如何高效地获取和处理数据,是当代计算机科学的重要组成部分。
本章主要介绍数据库技术的基本概述,包括数据库的发展历史、概念描述以及体系结构介绍,是数据库知识中最基本的部分。
1.1 数据库系统基本概述数据库系统应用示例1.航空售票系统(最早使用数据库技术)●包括信息:座位预定信息:座位分配、座位确认、餐饮选择航班信息:航班号、飞机型号、机组号、起飞地、目的地、起飞时间、到达时间、飞行状态等机票信息:票价、折扣、有无等●主要功能:查询在某一段时间内从某个指定城市到另个指定城市的航班、是否有可以选择的座位、是否有其他飞机型号、飞机票价、是否折扣等信息更新乘客登记航班、分配座位、选择餐饮等●任何时候都有许多航空售票代理商访问这些数据、避免卖同一座位。
●通过这些数据,可以统计出经常坐某一航班的乘客信息,并为这些乘客提供优惠●系统特点:数据庞大,人工不能提供及时、准确服务2.超市管理系统●包括信息:商品信息:品名、规格、产地、类别、单位、单价等供应商信息:供应商名、地址、联系人、住址、电话等销售信息:商品、数量、单价、金额、销售日期、收款人、折扣等收款人信息:姓名、小组、性别、年龄、电话、地址、身份证等●主要功能:查询:某类商品信息、供应商信息、某类商品销售情况、畅销商品、商品销售金额等更新:登记商品信息、供应商信息等●对存储有上万种商品的超市,每天有数百万销售记录,信息统计量大、人工操作不准确3.图书管理系统●包括信息:图书信息:书号、书名、作者姓名、出版日期、类型、页数、价格、出版商名称等作者信息:姓名、身份证号、性别、出生日期、学历、住址、电话等出版社信息:名称、地址、社长、成立日期等读者信息:姓名、借书号、书名、借书日期、借书数量等1.1.1 数据库技术的发展历史从数据管理的角度看,数据库技术到目前共经历了人工管理阶段、文件系统阶段和数据库系统阶段。
一、需求分析1.系统分析随着时代的进步,如今各个服务行业也都逐渐发展壮大起来,尤其是食堂服务业,其在服务范围、服务数量和服务内容上都有着非常大的膨胀幅度,因此如何对如此复杂而频繁的服务活动进行管理就属于“食堂管理”的内容。
其主要包括:职员资料管理、物品管理、消费内容管理、席位管理、客户评价管理,工资管理等,它是现代食堂管理中的一个重要组成部分。
2.功能需求分析“食堂管理” 包括很多项目,以前食堂管理人员要记录大量的用户消费内容,然后通过计算器进行一系列的加减乘除运算,最后得出一位顾客的“应付金额”,这样做的效率和准确度可想而知。
如果使用计算机来实现对食堂服务业的智能管理,从选择菜、酒水、主食,到计算“应付金额”,最后到打印消费内容,计算机都可以很准确、很快捷地进行处理,这些都是“食堂管理系统”的功能。
一个完善的“食堂管理系统”可以很好地管理食堂服务业的各项内容,这样不仅能更好地服务顾客,而且可以为经营者创造更大的利润。
针对每部分的具体功能我们又做了如下的详细分析:二、涉及的表职员资料物品表席位表销售记录评价情况工资表SQL 命令创建数据库create database 食堂管理系统on primary (name= stglxt_data,filename='e:\stglxt_data.mdf')log on (name=stglxt_log1,filename='e:\stglxt _log.ldf')创建表create table 职员资料(职员编号char(6) not null primary keycheck(职员编号like'[0-9][0-9][0-9][0-9][0-9][0-9]'),姓名varchar(20) not null,职位varchar(20) not null,性别char(2) not null check(性别='男' or 性别='女') default '男',民族varchar(8) null default '汉族',出生日期datetime not null,身份证号码char(18) not null unique,婚姻状况char(4) not null check(婚姻状况='已婚' or 婚姻状况='未婚') default '未婚',联系电话varchar(11) not null unique,备注varchar(30))create table 物品表(物品编号 char(6) not null primary key,物品名字 varchar(20) not null,所属类型 char(4) not null check(所属类型='主食'or 所属类型='酒水' or 所属类型='其他') default '主食',价格 money not null,是否售馨 char(2) not null check(是否售馨='是' or 是否售馨='否') default '否',品牌 varchar(30),备注 varchar(30))create table 席位表(席位号char(6) not null primary key,负责人编号char(6) not null foreign key references 职员资料(职员编号) on update cascade on delete cascade,人数int not null,状态char(4) not null check(状态='使用' or 状态='预定' or 状态='空闲') default '空闲',日期datetime not null,备注varchar(30))create table 销售记录(类型char(4) not null check(类型='主食'or 类型='酒水' or 类型='其他') default '主食',数量int not null,方式char(4) not null check(方式='现场' or 方式='预定' or 方式='外卖') default '现场',金额money not null,日期datetime not null,备注varchar(30))create table 评价情况(职员编号 char(6) not null foreign key references 职员资料(职员编号) on update cascade on delete cascade,评价级别char(4) not null check(评价级别in ('优','良','一般','差')) default '优',日期datetime not null default getdate(),备注varchar(30))create table 工资表(职员编号char(6) not null foreign key references 职员资料(职员编号) on update cascade on delete cascade,工资money not null,日期datetime not null,备注varchar(30))所有表的截图如下:三、视图设计1.为了方便查看职员的评价与对应的职员,所以要建一个“职员信息与评价表”,以显示职员的评价的同时,还可以看到该职员的一些个人信息。
河北工业大学计算机科学与软件学院《数据库原理》课程实验报告题目:机票预订系统年月日机票预订系统1 需求分析为方便旅客,某航空公司拟开发一个机票预定系统。
旅客可通过旅行社或机场前台向该系统查询航班情况(按目的地、起飞时间、航班班次等)。
旅行社把预定机票的旅客信息(姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地等)输入该系统,系统为旅客安排航班,打印取票通知和账单,旅客在收到取票通知和账单后可交费并于飞机起飞前24小时凭取票通知和账单到机场前台取票,经系统校对信息无误后打印机票给旅客,旅客也可以直接到机场前台购票。
旅客也可向系统提出退票要求,系统针对具体情况计算手续费后进行相应退票处理。
1.1系统功能分析本系统设有三部分,分为旅行社登录部分、机场前台登录部分和管理员登陆部分。
不同部分通过不同的用户名进入机票预订系统的不同界面进行操作。
1)旅行社界面●查询:可对航班信息进行查询操作;●预订:可对旅客选定的航班进行预定操作并记录旅客预定信息;●帮助:提供系统使用帮助文档;●退出:关闭当前页面。
2)机场前台界面●查询:可对航班信息进行查询操作;●售票:可对旅客选定的航班进行操作记录旅客信息并打印机票;●取票:根据旅客提供的订单号核实旅客预定信息,打印机票;●退票:根据旅客提供的订单号核实旅客预定信息,为旅客提供退票服务;●帮助:提供帮助文档,方便旅客使用该系统;●退出:关闭当前页面。
3)系统管理员界面●查询机票信息:可对航班信息进行查询操作;●录入/修改机票信息:可对旅客信息进行添加、修改、浏览操作;●删除机票信息:可对旅客订票信息进行删除操作;●帮助:提供系统使用帮助文档;●退出:关闭当前页面。
机票预订系统主功能图:机票预订系统数据流图:3.机票预订系统数据字典在数据流图的基础上,定义数据字典。
数据字典是关于数据库中数据的描述,它的作用是在软件分析和设计过程中为有关人员提供关于数据描述信息的查询,以保证数据的一致性。
重点重点难点本章重难点分析(重点)知识点1 数据库基本概念1数据描述事物的符号记录2数据库是指长期储存在计算机中的有组织的、可共享的数据集合永久存储、有组织、可共享。
知识点1 数据库基本概念3、数据库管理系统(DBMS)4、数据库系统数据库系统知识点1 数据库基本概念用户(程序员)用户(数据库终端用户)应用程序数据库管理系统(DBMS)数据库数据库管理员(DBA)知识点1 数据库基本概念数据库管理员不同于普通数据库用户,他们是专门负责对数据库进行维护,并保证数据库正常、高效运行的人员;讲解归纳与举例【正确答案:C】讲解归纳与举例【正确答案:A】讲解归纳与举例【正确答案:数据】知识点1 数据管理技术的发展知识点1 数据管理技术的发展知识点1 数据管理技术的发展根源消除或控制数据冗余不一致性知识点1 数据管理技术的发展数据独立数据库管理系统具有对数据的统一管理和控制功能,主要包括数据的安全性、完整性、并发控制与故障恢复等,即数据库保护。
安全性知识点1 数据管理技术的发展知识点1 数据管理技术的发展故障恢复(Recovery)讲解归纳与举例【正确答案:D】讲解归纳与举例【正确答案:A】讲解归纳与举例【正确答案:故障恢复】讲解归纳与举例【正确答案:数据冗余】知识点1 数据库系统的结构三级模式模式内模式外模式客户/服务器结构浏览器/服务器结构知识点1 数据库系统的结构外模式也成为子模式用户模式模式也称为概念模式或逻辑模式也称为存储模式姓名 年龄孙小涵 18赵珂卉 17知识点1 数据库系统的结构概念模式,逻辑模式概念视图子模式,或用户模式数据视图,即用户视图存储模式内部视图,或存储视图知识点1 数据库系统的结构知识点1 数据库系统的结构客户/服务器结构(Client/Server,C/S)知识点1 数据库系统的结构浏览器/服务器结构(Browser/Server,B/S),三层三层:表示层、处理层(中间层)、数据层。
数据库概念结构设计和逻辑结构设计举例
某超市公司要设计一个数据库系统来管理公司的业务信息,该超市公司的业务管理大致可分为三部分:
1、超市公司的仓库管理业务;
2、连锁商店的商品销售业务;
3、连锁商店的集团购买业务。
业务管理规则如下:
(1)该超市公司有若干仓库,若干连锁商店,供应若干商品;
(2)超市公司的业务员负责与供应商联系商品进货业务;
(3)购进的商品按类存放在仓库中,每个仓库有若干保管员;
(4)每个连锁商店有一个经理和若干收银员,每个收银员只在一个连锁商店工作。
(5)每个商品编号只有一个商品名称,但不同商品编号可以有相同的商品名称,每种商品可有多种销售价格;
(6)连锁商店实行会员制,通过会员卡收集顾客信息。
顾客办理会员卡后,可享受一定的优惠;
(7)连锁商店要处理客户和销售员送来的集团购买大宗商品的订单,并根据库存情况交出货物同时开出发票,收到付款后应进行收款处理;
(8)连锁商店对大宗订货给予优惠,每种商品规定了不同订货数量和折扣。
一、设计局部ER模式
1、仓库管理子系统分ER图
根据管理规则(2),(3),与仓库管理子系统有关的实体包括:业务员、商品、供应商、仓库、职工。
因为每个业务员都可以与若干家供应商联系多项商品或进货业务,所以在业务员、商品、供应商之间存在一个三元的多对多的联系。
仓库与商品之间存在多对多,仓库与职工之间存在一对多的联系。
2、根据规则(1)(4)(5)(6),与商品销售业务有关的实体有商店、商品、收银员、顾客。
因为每个收银员都要与多个顾客购买的多种商品发生业务联系,所以在收银员、商品与顾客之间存在一个多对多的联系。
商品与商存在多对多的联系,商店与收银员之间存在一对多的联系。
3、连锁商店的集团购买业务是单独处理的,此业务处理主要是围绕“订单”和“应收帐款”的处理。
且这两项处理用的数字,是许多数据流共享的数据。
因此可以确定“订单”、“应收帐款”为实体。
因为每张订单有订单号、若干头信息和订单细节组成。
订单细节又由商品号、数量等来描述。
因此订单细节就不能作为订单的属性处理,而应该上升为实体。
一张订单可以订若干商品,所以订单与订单细节两个实体之间是一对多的联系。
由此,原订单和商品的联系实际上是订单细节和商品的联系。
每条订单细节对应一个商品描述,订单处理从中获得当前商品单价、重量等信息。
由于连锁商店对集团的大宗订货给予优惠,每种商品都规定了不同的订货数量的折扣,应增加一个“折扣规则”实体来存放这些有关信息。
二、设计全局ER图
任务:把分ER图集成在一起。
(1)合理地消除各分ER图的冲突;(2)消除不必要的冗余。
如:连锁商店的所有商品,都是通过公司的仓库调配进货的,所以商品和仓库之间的多对多联系,以及商品和商店之间的多对多联系,可以合并成三个实体间的多对多联系。
把ER图转换成关系模式
1、职工(工号,姓名,性别,仓库号)
2、仓库(仓库号,地址,电话,负责人)
3、商店(商店号,商店名,地址,电话,经理)
4、商品(商品号,商品名,规格,单价,产地)
5、顾客1(顾客号,姓名,地址,电话)
6、收银员(工号,姓名,性别,商店号)
7、业务员(工号,姓名,性别,电话)
8、供应商(供应商号,名称,地址,帐号,电话)
9、进货1(商品号,供应商号,业务员,进货量))
10、进货2(商品号,商店号,仓库号,数量))
11、销售(商品号,收银员,顾客号,销售额)
12、顾客2(顾客号,姓名,地址,电话,信贷状况,帐目余额)
13、应收帐款(顾客号,订单号,发票号,应收金额,支付日期,支付金额)
14、订单(订单号,顾客号,订货项数,订货日期,交货日期)
15、订单细节()
16、商品描述()
17、折扣规则()。