收藏 分享(赏)

数据库原理课程设计教学实验指导.doc

上传人:dzzj200808 文档编号:2239600 上传时间:2018-09-07 格式:DOC 页数:17 大小:157.50KB
下载 相关 举报
数据库原理课程设计教学实验指导.doc_第1页
第1页 / 共17页
数据库原理课程设计教学实验指导.doc_第2页
第2页 / 共17页
数据库原理课程设计教学实验指导.doc_第3页
第3页 / 共17页
数据库原理课程设计教学实验指导.doc_第4页
第4页 / 共17页
数据库原理课程设计教学实验指导.doc_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、0福建农林大学计算机科学与技术专业数据库原理课程设计教学实验指导书计算机与信息学院2006.91目 录一、课程设计的目的和意义 .1二、课程设计的要求 .1三、课程设计选题的原则 .1四、课程设计的一般步骤 .1五、课程设计的内容 .2六、课程设计的报告内容 .2七、课程设计的评分标准 .2八、课程设计的提交材料 .3附录一 .3附录二 .51一、课程设计的目的和意义数据库原理课程设计是实践性教学环节之一,是数据库原理课程的辅助教学课程。通过课程设计,使学生掌握数据库的基本概念,结合实际的操作和设计,巩固课堂教学内容,使学生掌握数据库系统的基本概念、原理和技术,将理论与实际相结合,应用现有的数

2、据建模工具和数据库管理系统软件,规范、科学地完成一个小型数据库的设计与实现,把理论课与实验课所学内容做一综合,并在此基础上强化学生的实践意识,提高其实际动手能力和创新能力。二、课程设计的要求通过设计一个完整的数据库系统,使学生掌握数据库设计各阶段的输入、输出、设计环境、目标和方法。熟练掌握两个主要环节概念结构设计与逻辑结构设计;熟练的使用SQL 语言实现数据库的建立、应用和维护。集中安排 1.5 周进行课程设计,以小组为单位,一般 22 人为一组。教师讲解数据库的设计方法以及布置题目,要求学生根据题目的需求描述,进行实际调研,提出完整的需求分析报告,建立概念模型、物理模型,在物理模型中根据需要

3、添加必要的约束、视图、触发器和存储过程等数据库对象,最后生成创建数据库的脚本,提出物理设计的文档。要求如下1. 要充分认识课程设计对培养自己的重要性,认真做好设计前的各项准备工作。2. 既要虚心接受老师的指导,又要充分发挥主观能动性。结合课题,独立思考,努力钻研,勤于实践,勇于创新。3. 独立按时完成规定的工作任务,不得弄虚作假,不准抄袭他人内容,否则成绩以不及格计。4. 课程设计期间,无故缺席按旷课处理;缺席时间达四分之一以上者,其成绩按不及格处理。5. 在设计过程中,要严格要求自己,树立严肃、严密、严谨的科学态度,必须按时、按质、按量完成课程设计。6. 小组成员之间,分工明确,但要保持联系

4、畅通,密切合作,培养良好的互相帮助和团队协作精神。三、课程设计选题的原则课程设计题目以选用学生相对比较熟悉的业务模型为宜,要求通过本实践性教学环节,能较好地巩固数据库的基本概念、基本原理、关系数据库的设计理论、设计方法等主要相关知识点,针对实际问题设计概念模型,并应用现有的工具完成小型数据库的设计与实现。具体选题见附录,也可自行选题。四、课程设计的一般步骤课程设计大体分五个阶段:1. 选题与搜集资料:根据分组,选择课题,在小组内进行分工,进行系统调查,搜集资料。2. 分析与设计:根据搜集的资料,进行功能与数据分析,并进行数据库,系统功能等设计。3. 程序设计:运用掌握的语言,编写程序,实现所设

5、计的模块功能。4. 调试与测试:自行调试程序,成员交叉测试程序,并记录测试情况。25. 验收与评分:指导教师对每个小组的开发的系统,及每个成员开发的模块进行综合验收,结合设计报告,根据课程设计成绩的评定方法,评出成绩。五、课程设计的内容掌握数据库的设计的每个步骤,以及提交各步骤所需图表和文档。通过使用目前流行的DBMS 建立所设计的数据库,并在此基础上实现数据库查询、连接等操作和触发器、存储器等对象设计。1. 需求分析:根据自己的选题,绘制的 DFD,DD 图表以及书写相关的文字说明。2. 概念结构设计:绘制所选题目详细的 E-R 图。3. 逻辑结构设计:将 E-R 图转换成等价的关系模式;按

6、需求对关系模式进行规范化;对规范化后的模式进行评价,调整模式,使其满足性能、存储等方面要求;根据局部应用需要设计外模式。4. 物理结构设计:选定实施环境,存储结构和存取方法等。5. 数据实施和维护:用 DBMS 建立数据库结构,加载数据,实现各种查询,链接应用程序,设计库中触发器、存储过程等对象,并能对数据库做简单的维护操作。6. 用 VB、VC、ASP、JSP、PB 等设计数据库的操作界面。7. 设计小结:总结课程设计的过程、体会及建议。六、课程设计的报告内容1. 概述:包括项目背景、编写目的、软件定义、开发环境等内容。2. 需求分析:问题陈述、需完成的功能,可用 DD、DFD 等工具描述。

7、3. 概念模型设计:画出局部 E-R 图和全局的 R-R 图。4. 数据库逻辑设计:把全局 E-R 模型图转换为关系表。描述每一个基本表关系。要求所有关系达到 3NF 或 BCNF 范式。定义视图、定义索引、主关键字、定义权限。5. 软件功能设计:画出软件功能图。描述每一个功能所完成的任务情况。6. 界面设计:界面设计要合理。7. 结束语:写出完成本课程设计的心得,领会数据库理论与软件开发实践的关系。有哪些收获。软件还需要哪些改进。8. 参考文献。七、课程设计的评分标准评分标准:百分制1. 90-100:完成题目中的所有内容,功能完善,文档详细,数据库设计合理,人机接口界面好。2. 80-89

8、:完成题目中的大部分内容,功能较为完善,文档详细,数据库设计合较理,人机接口界面较好。3. 70-79:完成题目中的大部分内容,功能基本完善,文档较详细,数据库设计基本合理,有基本的人机接口界面。4. 60-69:基本完成上述内容,只有基本功能文档。5. 0-59:未按时完成上述内容,或者抄袭(雷同者全部为不及格) 。3八、课程设计的提交材料1. 每人交一份书面的课程设计报告(用 A4 纸打印) 。2. 以班级为单位交一张光盘:每个人一个目录(用学号姓名命令) ,目录中包含数据库中各个基本表的结构和数据,应用程序源代码,系统使用说明文档。附录一参考题目:1. 民航售票系统问题简述民航订票系统主

9、要分为机场、航空公司和客户三方的服务。航空公司提供航线和飞机的资料,机场则对在本机场起飞和降落的航班和机票进行管理,而客户能得到的服务应该有航班线路和剩余票数的查询,以及网上订票等功能。客户又可以分为两类,一类是普通客户,对于普通客户只有普通的查询功能和订票功能,没有相应的机票优惠,另一种是经常旅客,需要办理注册手续,但增加了里程积分功能和积分优惠政策。机场还要有紧急应对措施,在航班出现延误时,要发送相应的信息。2. 图书管理系统问题简述一个简单的图书管理系统包括图书馆内书籍的信息、学校在校学生的信息以及学生的借阅信息。此系统功能分为面向学生和面向管理员两部分,其中学生可以进行借阅、续借、归还

10、和查询书籍等操作,管理员可以完成书籍和学生的增加,删除和修改以及对学生,借阅、续借、归还的确认3. 人事管理系统问题简述系统功能的基本要求:员工各种信息的输入,包括员工的基本信息,学历信息,婚姻状况信息,职称等;员工各种信息的修改;对于转出,辞职,辞退,退休员工信息的删除;按照一定的条件查询、统计符合条件的员工信息,至少应该包括每个员工详细信息的查询;按婚姻状况查询,按学历查询,按工作岗位查询等,至少应该包括按学历,婚姻状况,岗位,参加工作时间等统计各自的员工信息;对查询,统计的结果打印输出。4. 工资管理系统问题简述系统功能的基本要求:员工每个工种基本工资的设定;加班津贴管理,根据加班时间和

11、类型给予不同的加班津贴;按照不同工种的基本工资情况,员工的考勤情况产生员工的每月的月工资;员工年终奖金的生成,员工的年终奖金计算公式=(员工本年度的工资总和+津贴的总和)/12;企业工资报表。能够查询单个员工的工资情况,每个部门的工资情况,按月的工资统计,并能够打印。5. 仓库管理系统问题简述系统功能的基本要求:产品入库管理,可以填写入库单,确认产品入库;产品出库管理,可以填写出库单,确认出库;借出管理,凭借条借出,然后能够还库;4初始库存设置,设置库存的初始值,库存的上下警戒限;可以进行盘库,反映每月,年的库存情况;可以查询产品入库情况,出库情况,当前库存情况,可以按出库单、入库单、产品、时

12、间进行查询。其它参考的题目家庭理财系统 住院收费信息管理系统 客户跟踪管理系统学生学籍信息管理系统 通讯录管理器 客户信息管理系统学生成绩智能管理信息系统 物资管理系统 员工培训管理系统酒店管理系统 汽车租借信息系统 美术馆管理系统企业工资管理系统 产品质量管理系统 宾馆管理系统高职学院教学管理系统 火车卧铺订票管理系统 银行账户管理系统书刊租借信息管理系统 选修课管理系统 商品交易系统学生缴费注册管理系统 干部档案管理系统 物资管理系统高校科研管理系统 教职工管理系统 房产销售管理系统毕业生管理系统 农业生产管理信息系统 用机记录浏览器小型财务系统 旅馆住宿客房管理系统 贸易公司管理系统航空

13、公司管理系统 医院管理系统 进销存管理系统内部行文管理系统 维修信息管理系统 订单生成系统商家打折信息管理系统 实验室数据上报系统 饭店餐饮收费信息系统工资信息管理系统 考勤信息管理系统 旅行社综合管理系统图书库存管理系统 出版社信息管理系统 时珍阁医药连锁店系统电脑书店信息管理系统 火锅连锁店管理系统 物流配送中心管理系统地区图书馆管理系统 水电收费管理系统 电信收费管理系统住院管理系统 公路交通管理系统 旅游营销系统网上订票系统 网上购书管理系统 某 BTOC 网站某 BTOB 网站 某综合门户网站 电信产品发布网站某地区地理信息网站 某专业网站 某类企业网站政府办公网站 教材管理系统 学

14、生宿舍管理系统5附录二零件交易中心管理系统(仅作参考)目的通过完成从用户需求分析、数据库设计到上机编程、调试和应用等全过程,进一步了解和掌握本书中所讲解的内容。问题简述零件交易中心管理系统主要提供顾客和供应商之间完成零件交易的功能,其中包括:供应商信息、顾客信息以及零件信息。供应商信息包括供应商号、供应商名、地址、电话、简介;顾客信息包括顾客号,顾客名、地址、电话;零件信息包括零件号、零件名、重量、颜色、简介等。此系统可以让供应商增加、删除和修改所提供的零件产品,还可以让顾客增加、删除和修改所需求的零件。交易员可以利用顾客提出的需求信息和供应商提出的供应信息来提出交易的建议,由供应商和顾客进行

15、确认后即完成这笔交易。课程设计全过程1 需求分析:(实际详细调查)2 数据库设计:(SQL Server 2000 设计)概念(模型)设计 (实际到概念)逻辑设计 (逻辑推导)物理设计 (理论到实现)SQL 编程、调试(测试验证) (实践反复检验)3 应用程序编程、调试、测试 (用人机交互前台开发工具 VB.NET 开发 windows 和 Web应用程序 )需求分析(详细地调查分析系统对象、功能、性能等需求)l 供应商供应商的操作流程图如图 A1 所示。图 A1 供应商操作分类表2顾客增加供应项修改供应项删除供应项修改个人信息供应项注册 注销6顾客的地位和供应商几乎是对称的,所以功能分类上也

16、很相似顾客的操作流程图如图A2 所示。图 A2 顾客操作分类表3交易员交易员的工作就是提出交易和完成交易。这里需要仔细考虑的问题是:一个交易如何产生,并如何达成,可以用图 A3 来说明这个问题我们在处理交易的时候可能面临如下问题:(1)一个交易只能在交易双方都同意的情况下才可以进行,所以数据库中的供求信息只能作为达成某个交易的基础;(2)交易的双方可能不同时使用这个系统,因此需要系统提供一个双方交换信息的方式;(3)系统需要提供一种方便系统(交易员)向用户提出建议来促成交易的途径,并在保证数据库数据完整性的情况下达成交易。图 A3 交易员操作图概念模型设计(从实践概括抽象出理论模型 E-R)数

17、据库需要表述的信息有以下几种:增加需求项修改需求项删除需求项修改个人信息顾客 注册 注销交易员协议书草案供应商以及顾客签字 正式签字交易员签发 完成交易 供应商提出交易顾客提出交易申请交易员提出交易建议7(1)零件信息(2)供应商信息(3)顾客信息(4)供应商集和零件集之间的联系(供应)图 A4 供应商和零件之间的联系(供应) E-R 模型(5)顾客集和零件集之间的联系(求购)图 A5 顾客和零件之间的联系(求购) E-R 模型(6)交易(三元联系)可以用 E-R 模型表述该模型的设计,E-R 图如图 A7 所示。M : N零件颜色零件号 零件名重量简介顾客电话顾客号顾客名地址求购数量 价格M

18、 : N零件颜色零件号零件名重量简介供应商名供应商供应商号地址电话简介供应数量价格供应商 交易价格数量求购数量价格供应商号供应商名地址电话 简介供应数量价格零件颜色零件号 零件名重量简介顾客电话顾客号顾客名地址8图 A7 全局 E-R 模型逻辑设计(从理论E-R 模型到理论关系模型的整理转换)通过 E-R 模型到关系模型的转化,可以得到如下关系模式:(1)零件实体集转换为 关系:Part(ID,Color,Name,Weight,Intro)(2)供应商实体集转换为 关系Provider(ID,Name,Addtess,Tel,Intro)(3)顾客实体集转换为 关系 Customer(ID,

19、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(交易),使用与之相联系的实体集的主健码作为自己的键码,必须符合外键码约束。对

20、于 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,PartI

21、D)2用 SQL 实现设计实现该设计的环境为 Windows 2000 Perfessinal+MSSQLServer 2000.01建立 Part 表 9CREATE 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 CLUSTE

22、RED,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 Smallin

23、t,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(Custom

24、erID smallint,PartID Smallint,Price int,Quantity int,CONSTRAINT PK_OFFERTOBUY PRIMARY KEY CLUSTERED(CustomerID,PartID),CONSTRAINT FK_OFFERTOBUY_CUSTOMERID FOREIGN KEY(CustomerID) REFERENCES Customer(ID),10CONSTRAINT FK_OFFERTOBUY FOREIGN KEY(PartID) REFERENCES Part(ID)6建立 Business 表CREATE TABLE Busi

25、ness(CustomerID smallint,ProviderID smallint,PartID Smallint,Price int,Quantity int,CONSTRAINT PK_BUSINEss PRIMARY KEY ClUSTERED(CuscomerID,ProviderID,PartID),CONSTRAINT FK_BUSINESS_CUSTOMERID FOREIGN KEY(CustomerID)REFERENCES Customer(ID),CONSTRAINT FK_BUSINESS_PROVIDERlD FOREIGN KEY(ProviderID) RE

26、FERENCES Provider(ID),CONSTRAINT FK_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 采查询和修改供应商的数据。(2)注销(unregister)DELETE Provider WHERE(ID=#ID);(

27、3)修改个人馆息(update)UPdate Provider Set(Name=#Name,Address=#Address,Tel=#Tel,Intro=#Intro)WHERE(ID#ID);(4)增加供应项(add_supply_item)INSERT INTO Supply(PartID,Providerid,Price,Quantity)VALUES(#PartID,#ProvderlD,#Price;#Quantily);(5)删除供应项(delete_supply_item) DELETE SupPlyWHERE(PartlD=#PartID AND ProvideID=#Pr

28、oviderlD);(6)修改供应项(update_supply_item)UPDATESupplySET(Price=#Price,Quantity=#Quantity)WHERE(PartlD=#PartID AND ProviderID=#ProviderID)很明显,系统并没有提供面向供应商修改零件信息的接口,所以供应商提供的零件必须已经在零件表中存在;可以这祥假设,交易所的管理员负责更新零件信息,而供应商可以向交易所申请增加某种零件的信息事实上顾客也可以提出这样的要求。8顾客操作 (1)注册(register)11INSERT INTO Customer(Name,Address,T

29、el)VALUES(#Name,#Address,#Tel);在登记操作后,顾客得到一个唯一的 ID,可以根据这个 ID 来查询和修改顾客的数据(2)注销(unregister)DELETE CustomerWHEREID=#ID);(3)修改个人信息(update)UPDATE Customer Set(Name=#Name,Address=#Address,Tel=#Tel)WHERE(1D=#ID);(4)增加需求项(add_OfferToBuy_item)INSERT INTO OfferToBuy(PartID,CustomeriD,Price,Quantity)VALUES(#Pa

30、rtID,#CustomerID,#Price,#Quantity)(5)删除需求项(delete_OfferToBuy_iterm)DELETE OfferToBuyWHERE(PartlD=#PartlD AND CustomerlD=#CustomerID);(6)修改需求项(叩 date_OfferToBuy_item)UPDATE OfferToBuy SET(Price=#Price,Quantity=#QuantityWHERE(PartlD=#PartID AND CustomeriD=#CustomerID)9交易员 针对需求分析中提出的问题,我们提出了“协议书”的解决方案,

31、方案的说明如下:(1)每个交易在达成以前都作为协议书保存在数据库中,协议书具有和交易一样的完备信息,可以在条件成熟的情况下转为一个达成的交易;(2)协议书只有在供应商和顾客都签字的情况下才有效;有效的协议书由交易员签发,协议书一经签发,就生效,表明一个交易的达成,数据库中的数据将同时予以修改;(3)协议书可以由供应商、顾客或者交易员中的任意一个人提出申请。当协议书在双方没有都签字前,协议的双方或者交易员都可以删除这个协议书;但是,当协议书签字完毕后,协议书就不得删除(修改),只能由交易员进行处理;(4)协议书有可能在转成交易的过程中失败,因为在交易达成以前,数据库中的数据有可能因为其他交易而变

32、化,一个协议书可能失效,这是允许的。根据以上分析,对数据库的模型作一些修改,增加协议书表,其关系模式如下:Agreement(CustomerlD,ProviderID,PartID,Price,Quantity,CustomerSign,ProviderSign)对应的 SQL 描述为:CREATE TABLE Agreement(Customerm smallint,ProviderlD smallint,PartlD smallint,Price int,Quantity int,CustomerSign int,ProviderSign int, CONSTRAINT PK_AGREE

33、MENT PRIMARY KEY CLUSTERED(CustomerID,ProviderID,PartID),12CONSTRAINT FK_AGREEMENT_CUSTOMERID FOREIGN KEY(CustomerID)REFERENCES Customer(ID),CONSTRAINT FK_ AGREEMENT_PROVlDERID FOREIGN KEY(ProviderID)REFERENCES Provider(ID),CONSTRAINT FK_AGREEMENT_PARTID FOREIGN KEY(PartID)REFERENCES Part(ID)与上述其他操作

34、相比,对交易的操作对数据完整性要求比较高,其中需要注意的地方是;要防止同一用户(供应商,顾客)的数据因两个交易而同时修改;需要同时对供应数据库(Supply)、需求数据库(OfferToBuy)、交易数据库(Business)和协议数据库(Agreement)作出修改,而且需要保持这些修改的原子性;很显然,这些要求正是对于一个事务(transaction)的要求,所以可以用一个事务来完成签发一个协议的操作。事务的描述如下:CREATE PROC PASS_AGREEMENTproviderID int,customerid int,partlD intASDECLARE TransName V

35、ARCHAR(20)SELECT TransName=Pass_AgreementBEGIN TRANSACTION TransNameDEClARE price INT,qUANTITY intSELECT price=price,quantity=quantity FROM AgreementWHERE prIVIderID=providerID AND customerID=customerID AND PanID=partID1NSERT INTO Business(ProviderID,CustomerID,PartID,Price,Quantity)VALues(provideri

36、d,customerID,PartID,price,quantity)UPDATE Supply SET quantity=quantity-quantityWHERE ProviderID=prividerID AND partID=partIDIF (SELECT quantity FROM SupplyWHERE Proiderid=provider AND partID=PartID)0ROLLBACK TRANSACTlON TranSNameDELETE FROM Supply WHERE quantity=0UPDATE OfferToBuy SET quantity=quant

37、tity-quantityWHERE CustomerID=customerid AND partlD=partIDIF(SELECT quandtity FROM OfferToBuy13WHERE CustomerID=CustomerID AND partID=partlD)0ROLLBACK TRANSACTION TransNameDELETE FROM OfferToBuy WHERE quantity=0COMMIT TRANSACTION TransName为了使用方便,这里定义了一个存贮过程;功能是完成从 Agreementt 的一个元组到Business 的一个元组的转化工

38、作。这里考虑到了删除空的 Suppiy 和 OfferTOBUY 项,更加重要的是,这里考虑到了非法的 Agreement 的情况,在一段时间后,由于供应商或者顾客修改数据,Agreement 可能就非法,这时就需要把这个事务废除,所以,这里检查了 Supply表和 OfferToBuy 表中的数据,确保数据仍然正确。另外交易员,或者说交易所必须承担的一项任务是更新零件列表。这里在考虑顾客和供应商的时候并没有给予他们修改零件列表的权利,所以他们必须根据数据库中已有的项更新自己的供求信息。由于这个数据库实际上更加偏重于模型化,而不是一个实际环境中的数据库,所以在实现应用模型的时候我们还需要对这个

39、数据库的模型作一些修改。由于本实验在模型设计上使用了 Microsoft Transact-SQL 的语法,因此以上的数据库操作都是在 SQLSERVER2000 上测试通过的。实验数据示例:测试阶段(1.实验方案设计 2.测试,查找错误校正错误,检查是否符合用户的功能性能要求)1实验方案设计(1)输入数据设计:1)插入零件信息;insert into Part(Color,Name,Weight,Intro)values(black,stick,30,of steel);显示刚插人的零件 id:select id from Part where name=stick;id-1(1 row(s

40、) affected)(不同的实验,id 值可能不同。以后相应操作要保持前后一致就可以丁。)2)插入供应商信息:insert into Provider(Name,password,Address,Tel,Intro)values(coml,1234,北京,6543210,nothing);显示刚插入的供应商 id:select id from Provider where name=coml;id- - -114(1 row(s) affected)3)插入顾客信息:insert into Customer(Name,Address,Tel)values(cusl,北京,6666666)显示

41、刚插入的顾客 id:select id from Customer where nameid- - -1(1 row(S)affected)4)插入供应商供应信息:insert into Supply(PartID,ProviderlD,Price,Quantity)values(1,1,20,100);5)插入顾客需求信息:insert into OfferToBuy(PartlD,CustomerID,Priee,Quantity)values(1,1,20,50);6)插入协议信息:insert into Agreement(CustomerID,ProviderID,PartlD,Pr

42、ice,Quantity,CustomerSign,ProviderSign)values(1,1,1,20,30,1,1);(2)执行交易操作设计:1)执行交易存储过程 PASS_AGREEMENT,参数为:1,1,1:PASS_AGREEMENT 1,1,1;(后面的三个参数分别对应前面选择出的供应商 ID、顾客 ID 和零件 ID。)2)结果:显示交易后供应信息和需求信息:select Quantity from Supply where PartlD1 and ProviderlD=1;Quantity- - - -70(1 row(s) affected)select Quantit

43、y from OfferToBuy where PartlD=l and CustomerID;Quantity-20(1 row(s) affected)3)分析结果:首先,保存在 Supply 表中 1D 为 1 的零件供应量为 100(参见 Supply 表的 Insert 语句),保存在 OfferToBuy 表中 ID 为 1 的零件需求量为 50(参见 OFFERToBuy 表的 Insert 语句)。在 Agreement 表中指出 ID 为 1 的供应商和 ID 为 1 的顾客要交易 30 个 ID 为 1 的零件。当执15行存储过程 PASS_AGREEMENT 之后,Supply 和 OfferToBuy 表中相应的数量都减少了 30,交易成功。4)再次执行交易操作:delete from Business;

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报