数据库原理(工商、物流)实验指导书刘琼慧交通经济管理实验教学中心目录实验一VisualFoxpro6.0基本操作实验二概念模型的建立实验三数据库表的管理实验四SQL语言的应用实验五数据库设计方法实验实验六数据库应用设计实验实验一VisualFoxpro6.0基本操作(必做实验)一、实验目的VFP作为成功的PC平台RDBMS,其性能优越、界面友好、工具丰富、兼容性良好,并且容易上手、使用广泛,可满足中等规模数据库管理要求。了解VFP的基本知识,首先了解数据库的基本操作:交互命令方式和菜单操作方式,熟悉VFP用户界面。通过使用具体的DBMS,了解一种实际的数据库管理系统并掌握其操作技术二、实验原理数据库的操作:交互命令方式和菜单操作方式1.建立数据库结构2.输入数据库记录3.输入相关命令对数据库进行操作:如库结构的修改,记录的插入、删除、添加、库文件的复制、排序与索引、查询与统计等。三、实验要求1.制作学生基本情况数据表(JBB):包含{学号(C4)、姓名(C8)、性别(C2),生日(D),系别(C6),奖励(N8.2),打工收入(N7.2)、爱好(M),照片(G)};2.制作课程数据表(KCB),包含{课程号(C3),课程名(C10)、任课教师(C8),上课教室(C10)}等信息;3.制作选课数据表(XKB),包含(学号(C4),课程号(C3),考试成绩(N5.1),考试日期(D));4.制作家庭情况表(JTB),包含(学号(C4),父姓名(C8),母姓名(C8),父工作单位(C20),家庭住址(C24),家庭电话(C16));5.向学生基本表(JBB)中输入至少20名学生的信息。5人为工商管理系,4人为信息管理系,4人为工程管理系,其他人随便选择系别;6.向课程数据表(KCB)中输入至少10门课程;7.向家庭情况表(JTB)中至少输入20条与基本情况表相应的数据信息;8.向选课数据表(XKB)中输入学生选课情况。因一门课程可以被多名同学选修,一个同学可以选修多门课程;所以XKB中至少输入60条记录。要求选课表的学号必须是基本表中的学生,而所选课程必须是课程表中的科目。提示:XKB的数据录入可以使用命令Appendfrom从Jbb中提取学生数据,用Replace命令设定某些学生选修的课程,然后逐个学生输入成绩。四、思考与练习1.经过菜单操作,哪些菜单是始终存在于菜单栏上、哪些是动态的菜单?2.经过创建数据库的实验,结合VFP谈谈数据库管理系统的功能。实验二概念模型的建立(必做实验)一、实验目的1.根据给定的题目,把现实世界中的具体事物抽象为某一概念级的模型,即建立整个问题的概念模型,建立起数据库设计人员与用户之间的交流,为数据模型的建立奠定基础2.学会认识和分析现实世界,根据对用户需求,描述用户的数据要求:(1)练习如何从中抽取实体(2)练习如何建立各实体之间的联系(3)从各实体和实体间的联系,抽取出数据处理的过程二、实验原理对于概念模型的建立,可以通过手工方法建立,也可以通过辅助设计工具建立,如Sybase公司的powerdesigner等。1.手工建立通过一些编辑工具如word等,建立概念模型,通过该方法可以建立直观的概念模型,但后期的利用率很低,如通过该模型来建立逻辑模型和物理模型;2.辅助工具通过辅助工具,不仅可以建立直观的概念模型,还可以通过概念模型直接转换为逻辑模型,辅助工具可以很快速的完成,而且转换较合理。下面以powerdesigner的建立概念模型的方法来介绍建立概念模型的步骤。(1)进入powerdesigner环境中,如下图:工具条实体联系文本(2)通过点击相应的图标,建立相应的对象。如实体的建立、联系的建立等。如下图:上图共建立了3个实体:学生、课程和学生选课,在该模型中,也表明了各实体之间的联系,如学生和学生选课之间有一对多的联系,课程和学生选课之间也具有一对多的联系。注意:z在该模型中,带有下划的属性,表明该属性是该实体的主码,即用该属性来标识唯一的实体,即区别其它实体的属性。z该模型中,选课实体没有主码,怎么办?解决的方法是:使选课实体和学生、课程实体间的一对多的联系带上依赖的性质,则可以解决本问题。如下图,注意区别联系的图形表示。z实体属性的建立双击实体对象,弹出实体描述对话框;如下图:要求输入输入实体的名称(name)、实体代码(code)、实体标签(label)。点击attributes(属性)按钮,进入实体的属性输入框,如下图。在弹出框中输入多个属性,包含属性的名称(name)、代码(code)、数据类型(datatype),对于数据类型可以选择,如下图。在输入属性时注意属性的特性:I:为主码;如果是主码,则表明该属性唯一标识一个实体。M:为是否允许为空;如果选中,则表示该属性不允许为空。三、实验要求1.问题描述工厂(包括厂名和厂长名)需建立一个管理数据库存管理系统,信息如下:a)一个工厂有多个车间,每个车间有车间号、车间主任的姓名、地址和电话b)一个车间有多个工人,每个工人有职工号、姓名、年龄、性别和工种c)一个车间生产多种产品,产品有产品号和价格d)一个车间生产多种零件,一个零件也可能为多个车间制造。零件有零件号、重量、价格e)一个产品由多种零件组成,一个零件也可装配出多种产品f)产品与零件均存入仓库中g)厂内有多个仓库,仓库有仓库号、仓库主任姓名和电话2.根据以上要求,建立该系统的实体-联系模型图。五、思考与练习1.对于多对多的联系如何处理?2.该概念模型能够很好地描述该工厂的数据要求吗?实验三数据库表的管理(必做实验)一、实验目的进一步了解VFP数据库管理系统的基本功能,熟练掌握VFP6.0的基本操作,加强对数据库管理系统原理性的认识和实际操作技能。二、实验原理输入相关命令对数据库进行操作:如库结构的修改,记录的插入、删除、添加、库文件的复制、排序与索引、查询与统计等三、实验要求1.显示80年12月31日以后出生的女生的基本情况;2.分屏显示信息管理系的男生的获奖情况;3.给工商管理系82年以前出生的男生增加删除标记,然后取消删除标记;4.在基本表中增加字段年龄(N3.0),并以当前时间为界计算出每位同学的年龄;5.统计出84年以后出生的工程管理系获奖的女生人数;6.增加总收入(N9.2)字段,求出每位同学的总收入;7.求出所有同学的平均打工收入和平均总收入;8.计算工商管理同学的平均打工收入和平均总收入;9.按系别分类汇总各系应领取奖学金的数额,结果存到数据表jbhz中。10.复制jbb为jbba,xkb为xkba,kcb为kcbA;11.创建数据库XSGL,将自由表JBBA、KCBA和XKBA导入到数据库XSGL中;12.打开XSGL数据库,打开数据库表jbba后,启动表设计器,观察数据库表设计器与自由表设计器的不同;将jbba中字段性别限定为只能输入“男”或“女”,如果输入其他信息则提示“性别必须为男或女!”,将学号限定为4位宽度,若低于四位则提示学号必须为四位;13.设定Jbba的学号为主索引,“系别+姓名”组成普通索引;kcba的课程号为主索引;xkba的“学号+课程号”为主索引,学号为普通索引,课程号为普通索引;14.建立xkba与Jbba的多对1永久联系,建立xkba与kcba的多对1永久联系;15.向建立了数据完整性约束的数据表jbba,Xkba和KCBA中输入数据,观察建立数据约束的意义。16.利用表链接命令建立新数据表zhb,要求综合表中包含工商管理系获奖(奖励字段值大于0)同学的学号,姓名,性别,父姓名,母姓名,家庭住址,以便送喜报。(提示用Join命令);17.利用表关联命令将基本情况表和家庭情况表建立关联,在屏幕上显示出工程管理系同学的姓名、性别、家庭住址,家庭电话。(提示:建立索引后用SetRelation名建立关联)。四、思考与练习1.总结针对表的操作有哪几种,各完成哪些功能?2.总结针对纪录的操作有那几种,各完成哪些功能?实验四SQL语言的应用(必做实验)一、实验目的通过基于关系型数据库管理系统VFP平台,使学生进一步了解关系数据模型及关系数据库管理系统的基本原理,熟悉标准的SQL语言的使用二、实验原理在前面实验所建立的一组样例表基础上,利用所掌握的SQL语言的结构及主要命令,对已有的数据库系统进行各种检索。三、实验要求1.利用SQL语句,将工商管理系同学的学号,姓名,性别,生日信息显示在屏幕上;2.利用SQL语句,把工商管理系获奖(奖励字段值大于0)同学的学号,姓名,性别,父姓名,母姓名,家庭住址信息送入表文件xsshy中;3.利用SQL语言求出每位同学的平均成绩,结果按列表浏览形式显示;4.利用SQL语言将JBB与XKB、JTB建立连接,显示出信息管理系同学的学号,姓名,性别,平均成绩,家庭住址,家庭电话;(提示:可利用3题的结果);5.利用SQL语言把JBB表中所有选课三门以上,平均成绩在95以上的同学再次给予500元奖励;6.练习用“查询向导”实现上述功能。(实验报告中可省略此题目)四、思考与练习1.我们在实验过程中使用的SQL属于多用户型数据库管理系统吗?如果不是,它属于那种数据库?还有哪些其它类型的数据库管理系统?2.我们实验中所用的VFP的SQL,它是一种完全标准的SQL吗?你还知道哪些扩展的SQL语言集?五、实验报告要求1.记录实验内容中使用到的sql查询语句。2.简述select查询语句的使用技巧。实验五数据库设计方法实验(必做实验)一、实验目的1.熟悉关系数据库规范化设计理论,根据实验要求设计并建立科学合理的数据库,正确建立数据库中表与表之间的关系。2.能够综合运用《数据库原理》课程的基本理论和知识,结合一个实际的小型的管理信息系统进行课题模拟,复习、巩固、提高数据库方案设计、论证和分析方法。二、实验原理选题:小型自选商场综合管理系统数据库设计(也可自拟题目)。系统描述如下:小型自选商场综合管理系统应具备进货、销售、库存等基本管理功能,具体要求为:(1)能记录每一笔进货,查询商品的进货记录,并能按月进行统计(2)能记录每一笔售货,查询商品的销售情况,并能进行日盘存、月盘存(3)能按月统计某个员工的销售业绩(4)在记录进货及售货的同时,必须动态刷新库存(5)能打印库存清单,查询某种商品的库存情况(6)能查询某个厂商或供应商的信息(7)能查询某个员工的基本信息(8)收银台操作中,能根据输入的商品编号、数量,显示某顾客所购商品的清单,并显示收付款情况三、实验要求1.根据上述系统功能需求,描述该管理信息系统的ER概念模型。2.完成该管理信息系统的数据库总体设计方案,明确数据库中表的结构,各表中关键字的设置,表与表之间的关系。3.说明提交的数据库设计方案满足第几范式,说明设计理由。4.根据系统功能需求,以SQL语句的形式分类列出系统应涉及的数据操作。5.选用熟悉的数据库工具,根据设计方案正确建立数据库,并成功实现上述数据操作。四、思考与练习实验六数据库应用设计实验(选作实验)一、实验目的自行选题,如一个小型事务管理系统,调研其数据需求和功能需求,设计数据库与功能模块,在项目管理器支持下,开发该系统。要求有录入、查询、报表等功能,最后生成可执行文件。要求综合运用《数据库原理》课程的系统理论知识,把握数据库的设计思路、方法和技术,培养分析问题、解决问题的一般能力,并在数据库开发、运行、管理方面具备相应的知识和实际技能二、实验原理在数据库原理的系统理论指导下,开展实际调研,自行选择一个小型事务管理系统进行数据库的设计以及应用程序开发实现。三、实验要求1.要求自学VFP数据库程序设计的知识,并掌握VFP可视化编程的技术2.要求遵守软件工程的思想与规范,并提交设计报告的电子文档