数据库课程设计报告
实践内容:零件交易中心管理系统
学 生:庄 元
学 号:
班 级:计科
一、概述
1、项目背景:数据库原理课程设计
2、编写目的:掌握数据库设计原理及相关软件的使用
3、项目内容:零件交易中心管理系统
4、开发环境:用 实现设计
实现该设计的环境为
二、需求分析
!)供应商
供应商的操作流程图如图 " ! 所示。
)顾客
顾客的地位和供应商几乎是对称的,所以功能分类上也很相似。顾客的操作流程图如
图 " 所示。
)交易员
交易员的工作就是提出交易和完成交易。这里需要仔细考虑的问题是:一个交易如何
产生,并如何达成,可以用图 " 来说明这个问题。
我们在处理交易的时候可能面临如下问题:
#!$一个交易只能在交易双方都同意的情况下才可以进行,所以数据库中的供求信息只
能作为达成某个交易的基础;
#$交易的双方可能不同时使用这个系统,因此需要系统提供一个双方交换信息的方式;
#$系统需要提供一种方便系统(交易员)向用户提出建议来促成交易的途径,并在保
证数据库完整性的情况下达成交易。
二、数据库设计
#!$概念模型设计
数据库需要表述的信息有以下几种:
(!) 零件信息
() 供应商信息
() 顾客信息
() 供应商和零件之间的联系(供应)
() 顾客和零件之间的联系(求购)
() 交易(三元联系)
可以用 %&' 模型表述该模型的设计,%&' 图如图 " 所示。
#$逻辑设计
通过 %&' 模型到关系模型的转化,可以得到如下关系模式:
(!) ((ID,)*,+,,-,.)
() ((ID,+,",/*,.)
() )0(ID,+,",/*)
() 011*2(PartID,ProviderID,(,032)
() "4(CustomerID,PartID,(,032)
() 0(CustometID,ProviderID,(.,(,032)
每个关系模式的键码都用下划线标出。同时,对于从联系导出的关系 011*2(供应),
"4(求购)和 0(交易),使用与之联系的实体集的键码作为自己的键码,必须
符合外键码约束。
对于 )0(顾客),((供应商)和 ((零件)之间,不存在直接的约束,
所以可以存在没有供应商供应同时也没有顾客求购的零件。
#$物理设计
为了提高在表中搜索元组的速度,在实际实现的时候应该基于键码建立索引。下面是各
表中建立索引的表项:
(!) ((.)
() ((.)
() )0(.)
() 011*2((.,(.)
() "4()0.,(.)
() 0()0.,(.)
三、数据表
#!$建立 ( 表
5*((.**.%+/./67!8!9('."'6:%6);/%'%,
)*-798