《管理信息系统》
实验
指
导
书
梁玉国编
西华大学管理学院
目录
实验一熟悉系统开发的方法—VF数据库(4学时) (3)
实验二程序文件的建立;分支结构程序设计(2学时) (13)
实验三自选题目的菜单设计(4学时) (17)
实验四结合所选的题目进行数据库设计(2学时) (22)
实验五自选系统的数据输入设计(4学时) (25)
实验六查询设计(2学时) (35)
实验七输出设计(2学时) (41)
实验八用VISUAL FOXPRO实现自选系统的运行(4学时) (44)
附:“通讯录管理系统的设计”参考 (44)
实验一熟悉系统开发的方法—VF数据库(4学时)
一、实验目的与要求:掌握课堂讲授的基本数据库知识和VFP的基本技巧
1. 数据库管理系统合数据库应用系统;
2. Foxpro的界面组成与操作;
3. Foxpro的工作方式;
4. 表的基本操作(表的建立与修改、表达式、维护命令);
5. 表的查询与统计(排序与索引,SELECT-SQL查询,数据库于视图);
6. 程序设计初步(程序文件,程序的控制,多模块程序)。
二、实验类型
验证型
三、实验原理及说明
使用CREA DATABASE
使用项目管理器
输入记录
四、实验仪器
计算机
五、实验内容
(一)熟悉Visual FoxPro的窗口界面与系统菜单。
(二)学会Visual FoxPro的启动和退出,学会设置Visual FoxPro的工作环境。(三)掌握项目文件的建立、打开、关闭的操作方法。
(四)掌握项目管理器中新建、添加、删除文件的操作过程。
(五)利用项目管理器创建自己的项目文件。(注意:今后的实验围绕着自己的应用系统进行,需保存好每节课的结果。)
(六)初步学会表设计器的用法。
(七)掌握表的相关操作。
(八)学会对数据库表进行排序操作。
(九)掌握结构复合索引的建立和使用。
(十)统计命令
以下操作针对课程表course.dbf
1. 计算表中所有学分的总和,把它存入变量T1中,并显示该变量的值。
2. 计算公共基础课的学时数的和,结果存入变量T2中,并显示该变量的值。
3. 统计专业选修课的数量,结果存入变量T3中,并显示该变量的值。
以下操作针对学生表student.dbf
4. 求表student.dbf中所有女生的平均总分,结果存入变量A中。
5. 统计表student.dbf中86年出生的人数,把它存入变量T4中,并显示该变量的值。
六、实验步骤:
(一)启动VFP6.0
方法一:直接双击桌面的VFP6快捷图标。
方法二:单击“开始”、“程序”、“Microsoft Visual FoxPro6.0”、“Microsoft Visual FoxPro 6.0” 。
(二)退出VFP 6.0
方法一:在“命令”窗口中,输入“quit”
方法二:按“Alt—F4”
方法三:在“文件(F)”菜单中,选择“退出”命令
方法四:单击主窗口左上角的图标,选择“关闭(C)”
(三)设置默认目录(重要)
VFP6.0默认的工作目录为VFP程序的安装目录,它包含了VFP内含的数据,默认情况下,VFP把用户创建的数据库也放在主目录中。因此,最好建立自己的工作目录。例如在E盘建立一个文件夹,命名为自己的学号或姓名,如20080001,以后所有的实验内容都保存在这个文件夹中,需设定E:\20080001为自己的默认工作目录。
方法一:
(1) 选择菜单栏中的“工具(T)”下拉菜单中的“选项(O)…”命令,弹出“选项”窗口,单击“文件位置”选项卡。
(2) 在窗口中选中“默认目录(未用)”,单击“修改(M)…”按钮,弹出“更改文件位置”对话框,如
(3) 单击“使用(U)默认目录”框左边的复选框,再单击右边的生成器按钮,打开“选择目录”对话框,
(4) 选择当前工作目录,即你自己的文件夹,这时VFP关闭“选择目录”对话框,并返回到“更改文件位置”对话框。再单击“确定”按钮,回到“选项”对话框,默认目录已变为你自己的文件夹,单击“确定”按钮,VFP关闭“选项”对话框,并把选定的目录作为当前工作目录。
经过以上4步,VFP就把用户创建的数据文件保存到当前工作目录中,这样用户就避免了在保存数据文件时反复选择目录的麻烦。
方法二:在命令窗口输入:set default to E:\20080001
(四)项目管理器的使用
(1)建立一个项目文件“学生管理系统.pjx”。(本课程目标即在学期末设计完成一个简单的学生管理系统)
(2)熟悉项目管理器的界面,练习项目中文件的查看方法,了解项目管理器中一些按钮的含义。
(3)在项目管理器中新建一个自由表“学生.dbf”,该表包含以下四个字段:学号(字符型)、姓名(字符型)、性别(逻辑型)、出生日期(日期型)。
(4)为表“学生.dbf”任意输入两条记录。(简单介绍一下浏览记录、追加记录、修改表结构等方法)
(5)将学生.dbf从项目中移去,再添加进来。
(6)退出VFP。
(五)初步熟悉命令窗口的用法和特点(为后续实验做准备)
1.启动VFP。
2.隐藏和显示命令窗口。
3.打开刚才建立的表文件学生.dbf。
方法:在命令窗口输入命令use 学生.dbf
注:注意观察状态栏的变化。
4.浏览当前打开的表中的记录
方法:在命令窗口输入命令browse
(1)设计并建立学生成绩管理数据库,其中包括三个表:学生表、课程表、成绩表,本例先建立学生表。
①设计表的结构描述学生的信息,定义字段的数据类型及相关属性,表记录如下图所示。
②选择菜单“文件-新建-数据库”,进入数据库设计器,建立数据库“学生成绩管理.dbc”,
③建立数据库表
在数据库设计器中选择按钮“新建表”进入表设计器。
在打开的“表设计器”中,根据上面设计的表结构,输入各字段名、类型、宽度与小数位数,点击“确定”按钮。注意:该表会自动保存在你的工作目录下。
④输入记录
上一步点击“确定”后,会弹出一个对话框,问是否输入记录,单击“是”按钮,即可输入学生表的记录信息。
⑤退出VFP。
(2)表菜单的操作
点此下载已建好的学生表student.dbf,存放到你的工作目录中,启动VFP,打开该表,浏览表中的记录信息,练习表菜单的操作。注:对表作任何操作前必须首先打开该表。
命令方式
打开表:USE student.dbf
浏览表中所有记录:BROWSE
关闭当前打开的表:USE
菜单方式:文件-打开,文件-关闭
(3)对表"student.dbf"作以下操作:
①修改表结构,增加 "简历" 字段,类型为备注型。
②显示表结构。
③记录的增加
(1) 在表中增加一条记录(内容自定)。
(2) 在表中第三条记录前插入一条记录(内容自定)。
(3) 对表中的第二条记录编辑备注字段,添加内容 "THE STUDENT IS GOOD"。
④显示表记录
(1) 显示表中所有女同学的记录。
(2) 显示表中的"姓名,出生日期,总分"三个字段的内容。
(3) 显示表中男同学中总分大于550的记录,要求只要显示姓名,性别,总分三个字段。
(4) 显示表中1986年以前出生的学生记录。
(5) 显示表中从第5个记录开始的剩余所有记录。
⑤修改记录
(1) 打开BROWSE浏览窗口,修改第二个记录,将其总分增加10。
(2) 将表中男同学的总分增加10%。
(3) 将表中系科为体育的记录删除并恢复。
(4) 真正删除表中的第2~5记录 (用DELETE/ PACK)。
(5) 关闭表文件。
⑥表的复制
(1)将学生表结构复制到一个新表,新表文件名为student1.DBF,只含有学生表中姓名,学号,性别等三个字段。
(2)将学生表复制一个新表,新表文件名为student2.DBF。
(六)利用表设计器为表建立索引。
1、为表“student.dbf”建立一个主索引,索引表达式为“学号”,索引名为xh,降序。
操作步骤:打开学生成绩数据库,选中表student.dbf,按右键选择“修改”进入表设计器,设置索引。
2、执行list命令,观察记录的显示顺序。
3、为表“student.dbf”建立一个普通索引,索引名为xm,索引表达式为“姓名”,升序;执行list命令,观察记录的显示顺序。
4、关闭所有打开的数据库和表文件。再次打开表student.dbf,执行list命令,观察记录的显示顺序。
5、通过菜单方式设定主控索引为“xh”,执行list命令,观察记录的显示顺序。
操作方法:打开浏览窗口,选择菜单“表-属性”,弹出“工作区属性”对话框,从“索引顺序”列表框中选择索引名xh。
(七)使用命令排序、建立和使用索引。
1、将表student.dbf按"总分"字段降序排序,生成新表文件student3.dbf,并在屏幕上显示新表的记录。
2、将表student.dbf中的男同学记录按出生日期排序,生成新表文件student4.DBF。
3、对表course.dbf,分别以课程号、课程名和类别为索引表达式建立三个结构复合索引,索引名分别为kch,kcm,lb。
4、设定主控索引为kcm,并显示表中的记录。
5、用LOCATE命令查找课程名为“网页程序设计”的记录。
6、用FIND和SEEK命令查找课程号为“B002”的记录。
(八)数据库的相关操作
1、打开“学生成绩数据库.dbc”,将表course.dbf添加到该数据库中。
操作步骤:
(1) 通过选择“文件”菜单项下的“打开”选项,指定文件类型为数据库 (dbc) 。在出现的对话框中选取数据库文件“学生成绩数据库.dbc”所在的位置,找到“学生成绩数据库.dbc”,单击“确定”。
(2) 在出现的数据库设计器窗口中单击鼠标右键,弹出快捷菜单,选择“添加表”选项,然后在“打开”对话框中,选定自由表“courser.dbf”,点击“确定”按钮。
2、建立“学生成绩数据库.dbc”中表之间的永久关系,表student.dbf和表assign之间是一对多关系,表course.dbft 表assign之间是一对多关系。
操作步骤:
(1) 分别用鼠标右击每个数据库表,在弹出的快捷菜单中选取“修改”选项,出现“表设计器”窗口。
(2) 对表student.dbf,建立以学号为索引表达式的主索引;对表assign.dbf,建立以学号为索引表达式的普通索引。
(3) 建立永久关系。
将鼠标指向“student.dbf”表中的主索引“学号”,按下鼠标左键拖动到“assign.dbf”表中的普通索引“学号”上,然后释放鼠标左键,这时拖动过程中出现的小方块消失,并可看到两个表之间出现了一条连接线,表示两个表间的关系已经建立。
(4)运用同样的操作步骤建立表course和表assign之间的关系。
3、为表student和表assign之间建立的联系指定参照完整性,其中插入规则为“限制”,更新规则和删除规则为“级联”。
在数据库设计器窗口中单击鼠标右键,弹出快捷菜单,选择“编辑参照完整性”选项,在“参照完整性生成器”对话框中,选取父表列中的表student,再选中插入规则选项卡,点击“限制”单选钮。然后分别选中更新规则选项卡和删除规则选项卡,点击“级联”单选钮,最后单击“确定”。
验证插入规则是否“限制”:为成绩表assign增加一条记录,学号为“20080033”,由于学生表记录中无学号为“20080033”的学生记录,因此增加不了。
验证更新规则是否“级联”:把“student.dbf”中的学号“20080005”改为“20080105”,查看assign.dbf中的相关记录是否随之修改了。
验证删除规则是否“级联”:删除student.dbf”中的学号“20080001”的记录,查看assign.dbf中的相关记录是否随之删除。
(九)多表操作
1、工作区选择操作。
2、分别在两个工作区打开“student.dbf”与“assign.dbf”,建立表间的临时关联,移动student.dbf的记录指针,查看某个学生的成绩记录。
六、实验数据处理与分析
编写实验报告
七、预习与思考
复习所学的先修课程
实验二程序文件的建立;分支结构程序设计
(2学时)
一、实验目的与要求:
1、熟悉程序的编辑环境以及VFP程序文件的建立、运行与调试方法。
程序文件扩展名为 .prg
建立和修改程序: Modify Command <程序文件名>
运行程序:DO <程序文件名>
2、掌握VFP的基本输入输出命令 ACCEPT、INPUT、WAIT、?、??
3、了解常用环境设置命令和程序控制命令 SET TALK OFF,CLEAR,CANCEL,RETURN,QUIT
4、掌握顺序结构和分支结构的程序设计(IF语句和DO CASE语句),学会正确使用逻辑运算符、逻辑表达式、比较表达式。
IF <条件表达式>
<语句块1>
[ELSE
<语句块2>]
ENDIF
如果语句块1或语句块2又是一个IF语句,则称为IF语句的嵌套使用。
DO CASE
CASE <条件表达式1>
<语句序列1>
CASE <条件表达式2>
<语句序列2>
...
CASE <条件表达式N>
<语句序列N>
[OTHERWISE]
<语句序列N+1>
ENDCASE
二、实验类型
验证型
三、实验原理及说明
利用“项目管理器”可以快速访问“Visual FoxPro”的各种设计器,这些工具使得创建表、表单、查询和报表以管理数据变得轻而易举。
四、实验仪器
计算机
五、实验内容及步骤
【实验内容】
1、编写程序prog9-1.prg,实现以下功能:输入圆的半径,计算出圆的面积和周长。分析:
2、编写程序prog9-2.prg,根据输入的学生姓名,从表"student.dbf"中查找该学生的记录信息,并显示在屏幕上。
3、创建程序文件prog9-3.prg,从表student中查找指定日期以后出生的学生。
运行该程序时请注意输入日期的格式。
4、编写程序prog9-4.prg,从表"student.dbf"中,根据姓名查询指定学生的记录,若找到了则显示该学生的记录在屏幕上,若没有找到,则输出“XX同学不存在!”(其中XX代表输入的姓名)。
5、编写程序prog9-5.prg,根据用户输入的百分制成绩,转换成相应的等级输出。等级划分标准为:90-100分优秀;80-89分良好;70-79 分中等;60-69分及格;
60分以下为不及格。
六、实验数据处理与分析编写实验报告
七、预习与思考
复习所学的先修课程
实验三自选题目的菜单设计(4学时)
一、实验目的与要求
1.理解菜单的组成以及菜单基本概念(如菜单栏、子菜单、菜单选项等)。理解菜单在数据库应用系统中的作用及设计方法。
2.掌握利用菜单设计器设计菜单的方法。
3.掌握快捷菜单的特点以及设计方法。
参考题目:
下述选题供各组参考。小组也可以提出自己的选题,但须经指导教师的同意。
课程查询系统
班级学生成绩查询系统
快餐店外卖管理系统
牛奶配送管理
学生宿舍管理系统
居住小区业主服务系统(物业管理)
房地产中介公司业务管理系统
代理商管理系统
(旅行社)团队旅行管理系统
个人理财管理系统
中小型宾馆住宿管理系统
小杂货店库存管理系统
小药店药品销售管理系统
学生综合测评管理
超市会员管理系统
光盘出租管理系统
人民电影院订票管理系统
企业年度绩效考评管理系统
汽车配件销售管理系统
房地产销售演示系统
药品批发管理系统
企业工资管理系统;
仓库管理系统;
教务/教学管理系统;
项目管理系统;
医院管理系统;
图书管理系统;
办公自动化系统;
学籍管理系统;
成绩计算管理系统
二、实验类型
综合型
三、实验原理及说明
利用项目管理器进行菜单设计或通过编制命令文件完成所选系统的菜单设计。
四、实验设备:
1.微型计算机。
2.数据库管理系统软件
3.一个管理信息系统实验课题资料。
五、实验内容及步骤:
1.利用菜单设计器为学生成绩管理系统创建主菜单,菜单的结构如下图所示:
(1) 选择“文件”菜单项中的“新建”选项,指定文件类型为菜单,单击“新建文件”按钮,然后单击“菜单”按钮,进入菜单设计器界面。
(2) 在菜单设计器中,输入主菜单各菜单项内容,分别是“文件操作”、“数据浏览”、“退出系统”。
(3) 选中“文件操作”,在“结果”中选择“子菜单”,单击“创建”进入“文件操作”菜单级,单击“插入栏”,可以选择系统提供的菜单栏作为其子菜单,这里我们选择:新建,保存、关闭。
(4)从菜单级列表框中中选择“菜单栏”回到主菜单,选中“数据浏览”,单击创建进入“数据浏览”菜单级,输入各子菜单项,分别是“学生数据”、“课程数据”、“成绩数据”。
(5) 将“学生数据”子菜单项的“结果”类型设置为命令,单击创建按钮,输入命令:Do form student.scx
其他几个子菜单项设置同上,如下图所示:
(6) 从菜单级列表框中,选中“菜单栏”,返回第(2)步界面。
将“退出系统”菜单项的“结果”类型设置为过程,单击“创建”按钮,在过程设计窗口中输入:
SET SYSMENU TO DEFAULT
CLOSE ALL
RETURN
(7) 菜单以文件名“main.mnx”保存。选择菜单栏中的“菜单”选项,选择“生成”,并指定菜单程序文件的存储路径,将生成菜单程序文件main.mpr。
(8)利用向导分别建立三个表单student.scx,course.scx,assign.scx,功能是逐条浏览表数据。
(9) 运行菜单main.mpr,观察效果。
2. 将实验题1中建立的菜单main.mpr设为顶层表单。
(1)将“main.mnx”菜单系统的“显示”菜单下的“常规选项”对话框打开,选中“顶层表单”,然后重新“生成”菜单。
(2) 创建顶层表单mainform.scx,设置其Caption属性为:“学生成绩管理系统”,ShowWindows属性设置为:“2-作为顶层表单”。