当前位置:文档之家› sql数据库实例零件销售中心管理系统

sql数据库实例零件销售中心管理系统

重庆工商大学计算机科学与技术专业数据库原理课程设计教学实验指导书2004.1数据库原理课程设计教学实验指导SQL Server2000课程设计教学实验指导A.1 综合实验本课程的教学实验分为两部分:第一部分是按照实验指导书所要求的实验在计算机上完成;第二部分是作完上述实验后按照本课程设计教学实验指导书做的一个综合性实验。

通过教学实验可使读者较系统、全面地掌握相关的教学内容和必要的上机操作。

下面给出三个实验课题,其中第一个课题还附有参考答案。

希望读者在理解题意的基础上发挥自己的创新精神,有创意地完成教学实验。

如果觉得有参考答案可能会束缚自己的思维,也可选作第二或第三个实验课题.。

总之,因时间关系,只要求每个读者任选一个课题。

若有时间,有兴趣,可考虑另外两个课题,也会有所收益.A.1.1 实验一零件交易中心管理系统(实验目的]通过完成从用户需求分析、数据库设计到上机编程、调试和应用等全过程,进一步了解和掌握本书中所讲解的内容。

(实验简述)零件交易中心管理系统主要提供顾客和供应商之间完成零件交易的功能,其中包括供应商信息、顾客信息以及零件信息。

供应商信息包括供应商号、供应商名、地址、电话、简介;顾客信息包括顾客号,顾客名、地址、电话;零件信息包括零件号、零件名、重量、颜色、简介等。

此系统可以让供应商增加、删除和修改所提供的零件产品,还可以让顾客增加、删除和修改所需求的零件。

交易员可以利用顾客提出的需求信息和供应商提出的供应信息来提出交易的建议,由供应商和顾客进行确认后即完成这笔交易。

(实验要求)完成该系统的数据库设计:用SQl实现数据库的设计,并在SQLServer上调试通过.A.1.2 实验三民航售票系统(实验目的)通过完成从用户需求分析、数据库设计到上机编程、调试和应用等全过程,进一步了解和掌握本书中所讲解的内容。

··(实验简述]民航订票系统主要分为机场、航空公司和客户三方的服务。

航空公司提供航线和飞机的资料,机场则对在本机场起飞和降落的航班和机票进行管理,而客户能得到的服务应该有航班线路和剩余票数.的查询,以及网上订票等功能。

客户又可以分为两类,一类是普通客户,对于普通客户只有普通的查询功能和订票功能,没有相应的机票优惠,另一种是经常旅客,需要办理注册手续,但增加了里程积分功能和积分优惠政策。

机场还要有紧急应对措施,在航班出现延误时,要发送相应的信息。

(实验要求)完成该系统的数据库设计;用SQL、实现数据库的设计,并在SQlServcr上调试通过。

A.1.3 实验二图书管理系统(实验目的)通过完成从用户需求分析、数据库设计到上机编程、调试和应用等全过程,进一步了解和掌握本书中所讲解的内容.[实验简述]一个简单的图书管理系统包括图书馆内书籍的信息、学校在校学生的信息以及学生的借阅信息。

此系统功能分为面向学生和面向管理员两部分,其中学生可以进行借阅、续借、归还和查询书籍等操作,管理员可以完成书籍和学生的增加,删除和修改以及对学生,借阅、续借、归还的确认.[实验要求]完成该系统的数据库设计;用SQL实现数据库的设计,并在SQ SQLServer上调试通过.A.2 零件交易中心管理系统实验报告(参考答案)(实验目的)通过完成从用户需求分析、数据库设计到上机编程、调试和应用等全过程,进一步了解和掌握本书中所讲解的内容。

(实验简述)零件交易中心管理系统主要提供顾客和供应商之间完成零件交易的功能,其中包括供应商信息、顾客信息以及零件信息。

此系统可以让供应商增加、删除和修改所提供的零件产品,还可以让顾客增加、删除和修改所需求的零件。

交易员可以利用顾客提出的需求信息和供应商提出的供应信息来提出交易的建议,由供应商和顾客进行确认后即完成这笔交易。

[课程设计全过程]1需求分析:(实际详细调查)2数据库设计:(SQL Server 2000设计)概念(模型)设计(实际到概念)逻辑设计(逻辑推导)物理设计(理论到实现)SQL编程、调试(测试验证)(实践反复检验)3应用程序编程、调试、测试 (用人机交互前台开发工具开发windows和Web应用程序 )[需求分析](详细地调查分析系统对象、功能、性能等需求)l供应商供应商的操作流程图如图A1所示。

图A1 供应商操作分类表2.顾客顾客的地位和供应商几乎是对称的,所以功能分类上也很相似.顾客的操作流程图如图A2示所。

图A2 顾客操作分类表3.交易员交易员的工作就是提出交易和完成交易。

这里需要仔细考虑的问题是:一个交易如何产生,并如何达成,可以用图A3来说明这个问题.我们在处理交易的时候可能面临如下问题:(1)一个交易只能在交易双方都同意的情况下才可以进行,所以数据库中的供求信息只能作为达成某个交易的基础;(2)交易的双方可能不同时使用这个系统,因此需要系统提供一个双方交换信息的方式;(3)图A.3 交易员操作图[概念模型设计](从实践概括抽象出理论模型E/R)数据库需要表述的信息有以下几种:(1)零件信息(2)供应商信息(3)顾客信息(4)供应商集和零件集之间的联系(供应)图A.4供应商和零件之间的联系(供应) E/R模型(5)顾客集和零件集之间的联系(求购)图A.5 顾客和零件之间的联系(求购) E/R模型(6)交易(三元联系)可以用E/R模型表述该模型的设计,E/R图如图A7所示。

图A.7 全局E/R模型[逻辑设计](从理论‘E/R模型’到理论‘关系模型’的整理转换)通过E/R模型到关系模型的转化,可以得到如下关系模式:(1)零件实体集转换为关系:Part(ID,Color,Name,Weight,Intro)(2)供应商实体集转换为关系Provider(ID,Name,Addtess,Tel,Intro)(3)顾客实体集转换为关系Customer(ID,Name,Addtess,Tel)(4)供应联系转换为关系Supply(PartlD,ProviderlD,Price,Quantity)(5)求购联系转换为关系OfferToBuy(CustomerlD,PartID,Price,Quantity)(6)交易联系转换为关系Business(CustomerlD,ProviderlD,PartID,Price,Quantity)每个关系模式的主键码都用下划线标出。

同时,对于从联系导出的关系Supply(供应),OfferToBuy(求购)和Business(交易),使用与之相联系的实体集的主健码作为自己的键码,必须符合外键码约束。

对于Customer(顾客),Provider(供应商)和Part(零件)之间,不存在直接的约束,所以可以存在没有供应商供应同时也没有顾客求购的零件。

[物理设计](从理论‘关系模型’到实现\实施‘数据库建立’)(物理文件的安排和建立索引)1 为了提高在表中搜索元组的速度,在实际实现的时候应该基于键码建立索引是各表中建立索引的表项:(1)part(ID)(2)Provider(ID)(3)Customer(ID)(4)Supply(PartID,ProviderID>(5)OfferTOBuy(CustomerID,PartID)(6)Business(CustomerlD,ProviderID,PartID)2[用SQL实现设计]实现该设计的环境为Windows 2000 Perfessinal+MSSQLServer 2000.01.建立Part表CREATE TABLE Part(ID smallint IDENTITY(1,1) PRIMARY KEY CLUSTERED,Color varchar(20),Name varchar(20) NOT NULL,Weight int DEFAULT 0,Intro text)2.建立Provider表CREATE TABLE Provider(ID smallint IDENTITY(1,1) PRIMARY KEY CLUSTERED,Name varchar(20) NOT NULL,password varchar(8) NOT NULL,Address varchar(30),Tel varchar(20),Intro text)3.建立Customer表CREATE TABLE Customer(ID Smallint IDENTITY(1,1) PRIMARY KEY CLUSTERED,Name varchar(20) NOT NULL,Address varchar(30),TeL Varchar(20) )4.建立Supply表CREATE TABLE Supply(PartID Smallint,ProviderID smallint,Price int,QUantity int,CONSTRAINT PK_SUPPLY PRIMARY KEY CLUSTERED(PartID,ProviderID),CONSTRAINT FK_SUPPLY_PARTID FOREIGN KEY(PartID) REFERENCES Part(ID),CONSTRAINT FK_SUPPLY_PROVIDERID FOREIGN KEY(ProviderID) REFERENCES Provider(ID))5.建立OfferToBuy表CREATE TABLE OfferToBuy(CustomerID smallint,PartID Smallint,Price int,Quantity int,CONSTRAINT PK_OFFERTOBUY PRIMARY KEY CLUSTERED(CustomerID,PartID),CONSTRAINTFK_OFFERTOBUY_CUSTOMERID FOREIGN KEY(CustomerID)REFERENCES Customer(ID),CONSTRAINT FK_OFFERTOBUY FOREIGN KEY(PartID)RE FERENCES Part(ID))6.建立Business表CREATE TABLE Business(CustomerID smallint,ProviderID smallint,PartID Smallint,Price int,Quantity int,CONSTRAINT PK_BUSINEss PRIMARY KEY ClUSTERED(CuscomerID,ProviderID,PartID),CONSTRAINTFK_BUSINESS_CUSTOMERID FOREIGNKEY(CustomerID)REFERENCES Customer(ID),CONSTRAINTFK_BUSINESS_PROVIDERlD FOREIGNKEY(ProviderID)REFERENCES Provider(ID),CONSTRAINTFK_BUSINESS_PARTID FOREIGN KEY(PartID)REFERENCES Part(ID))7.供应商操作(1)注册(register)INSERT INTO Provider(Name,password,Address,TeI,Intro)VALUES(#Name,#password,#Address,#Tel,#Intro)在登记操作后,供应商得到一个唯一的ID,可以根据这个ID采查询和修改供应商的数据。

相关主题