1《机械工程数据库》实验指导第一次实验VFP的基本操作实验1:中文VisualFoxPro6.0的操作1.实验目的:掌握中文VisualFoxPro6.0的安装过程;掌握中文VisualFoxPro6.0的启动和退出方法;掌握中文VisualFoxPro6.0的主要操作界面。2.实验内容:*2.1中文VisualFoxPro6.0的安装过程此部分为选作实验。2.2中文VisualFoxPro6.0的启动和退出1.练习并掌握VFP的不同启动方法,重点掌握以下两种方法:通过“开始”菜单启动VFP;通过桌面快捷方式启动VFP2.练习并掌握VFP的不同退出方法:单击窗口标题栏的关闭按钮;通过窗口菜单退出;使用快捷键[ALT]+[F4]退出;在命令窗口中输入QUIT退出。2.3掌握中文VisualFoxPro6.0的主要操作界面1.掌握命令窗口的操作方法(1)打开命令窗口操作(2)关闭命令窗口操作(3)使用命令窗口操作在命令窗口输入以下内容,记下主窗口的显示内容:①@3,5SAY“25*2%3+(86/5-12)+5^3=”;+STR(25*2%3+(86/5-12)+5^3)2②A=23B=”23”?A,B2.编辑窗口操作方法新建一个程序,打开一个编辑窗口,输入如下程序:CLEARINPUT“请输入整数M:”TOMINPUT“请输入整数N:”TONS=0T=0DOQJCHWITHM,S&&转去执行求阶乘子程序?SDOQLJWITHN,T&&转去执行求累加子程序?T?S,T***求阶乘子程序***PROCEDUREQJCHPARAMETERSM,SS=1FORI=1TOM3S=S*IENDFORRETURN***求累加子程序***PROCEDUREQLJPARAMETERSN,TT=0FORI=1TONT=T+IENDFORRETURN实验2:“项目管理器”的使用1.实验目的:掌握“项目管理器”的使用方法2.实验内容:2.1建立项目建立一个项目文件:学生.pjx2.2打开已有项目打开项目文件:学生.pjx42.3“项目管理器”的折叠与展开2.4展开与折叠目录树2.5在项目中建立文件建立一个程序文件,文件名为PROGRAM1.PRG。程序为:ClearSum=0ForI=1to50step2Sum=sum+IEndfor@5,10say“sum=”+str(sum,5)2.6从项目中移去文件将程序文件PROGRAM1.PRG从项目中移去。52.7向项目添加文件将程序文件PROGRAM1.PRG添加到项目中去。2.8在项目中修改文件将程序文件PROGRAM1.PRG中sum=0修改为sum=1。2.9运行程序文件运行程序文件PROGRAM1.PRG并记录运行结果。实验3:变量、函数和表达式实验1.实验目的:掌握各种变量、函数和表达式的使用方法2.实验内容:2.1系统变量实验(1)用系统变量_diarydate输出当天日期;6(2)将2007年5月1日赋值给系统变量_diarydate并输出。2.2内存变量实验(1)建立4种类型(N、C、L、D)的内存变量并分别赋值为:23、”VisualFoxPro6.0”、.T.、{^2007-10-20};7(2)建立x1(2)和x2(2,2)数组,给数组各元素赋4种类型(N、C、L、D)的值并输出;(3)使用DISPMEMO和LISTMEMO命令,分别显示内存变量及数组变量,注意这两条命令的区别。82.3几种常用函数的使用实验(1)输出下列算术函数?abs(-11.9),sqrt(5),exp(3)?log(2.9876),int(-6.2534),round(21234.5678,-2)(2)输出下列字符运算函数?len(“Hello”),left(“Imastudent”,2)?right(“Imastudent”,7),substr(“Imastudent”,6,7)(3)输出下列日期函数?date(),time(),datetime(),cdow(datetime())(4)输出下列各类型转换函数?asc(“xyz”),chr(98),str(323.5566,6,2)?val(“123.45a6”),upper(“a”),lower(“A”)(5)字符运算函数宏函数&9在命令窗口输入:a=1b=2c=3yy=’a+b+c’?yy,&yy2.4字符和数值函数应用实验设有如下字符串:“Visualfoxpro6isdatabasemanagementsystem.”要求编写命令完成以下目的:(1)用函数方法将foxpro改为FoxPro,将database改为DataBase。提示:使用检索字符替换函数strtran(),其语法格式为Strtran(源字符串表达式,被替换的字符串表达式,用于替换的字符串表达式)10(2)取该字符串长度除以6的余数。(3)在该字符串两边各增加”***”字符串。(4)将第6个字母的ASCII值减去32再放回到原位置。2.5逻辑与日期函数实验(1)给内存变量a1赋值6,给内存变量a2赋值20:测试a1是否位于1~20之间;测试a1变量的数据类型,测试a1是否为空;测试a2变量的值是否大于10,是则返回“是”,否则返回“不是”。(2)输出当前时间的年、月、日、星期几。(3)输出datetime()函数的年2.6对各种类型表达式进行求值实验(1)给各变量赋值:a=2,b=3,c=4,e=5,f=6,输出下面表达式的值及类型:b+(2+c)/a/((e+f)*(a+b))(2)对下列各个表达式求值:“ABC”=”ABCE123”和”ABCE123”=”ABC”;“ABC”$”123ABC”和”123ABCDE”$”ABC””ABCE123”=”ABC”和”ABCE123”==”ABC”(3)在命令窗口给各变量赋值:a=1,b=2,c=3,x=123,aa=”机电学院”,bb=”机设”,cc=”05”,dd=aa+space(1)+bb+space(1)+cc,ee=substr(dd,9,10)求逻辑表达式:(b**2-4*a*c)0.AND.(b+a+c)/b0的值;求表达式:aa$ee,ee$cc,ee$dd,AT(cc,ee),ee-aa+bb的值;求表达式:NOTabANDaa=”机电学院”ORc+30200的值(4)ASC(“A”)ASC(“B”).OR.ABS(-22.2)MAX(-11,22.2).AND.MOD(22,5)MIN(-22.2,22)(5)REPLICASE(STR(321+VAL(“32A1”),3),3)(6)求函数TYPE(“X”)的值,LEN(“&X”)的值(7)MONTH(CTOD(“12-21-2006”))+40(8)DAY(CTOD(“12-21-2006”))+40(9)YEAR(CTOD(“12-21-2006”))+4011《机械工程数据库》实验指导第二次实验VFP表的基本操作实验4:表的建立与显示1.实验目的:掌握VisualFoxPro中表结构的建立方法掌握表中记录的输入方法2.实验内容:记录:学号姓名性别出生日期院系0502051101王祖贤女12/25/80外语0502051102刘翔男02/17/80计算机0502051103李咏男03/10/80物理0502051104姜昆男02/13/81数学0502051105范冰冰女03/15/80数学0502051106夏雪儿女02/14/81物理2.1建立学生档案表,表名为学生.dbf表结构为:学号C(10),姓名C(12),性别C(2),出生日期D,院系C(18)122.2确定表结构后,立即输入前4条记录2.3以浏览方式查看表结构和记录,并追加后两条记录2.4按以下内容分别建立课程.dbf和学生成绩.dbf两个数据表的结构并添加记录课程.dbf的表结构为:课程编号C(4),课程名称C(20),开课院系C(18)学生成绩.dbf的表结构为:学号C(10),课程编号C(4),成绩N(5,1)各表的内容如下:13表一、课程表记录课程编号课程名称开课院系C101大学英语外语C102计算机基础计算机C103高等数学数学C104数据结构计算机C105普通物理物理C106日语一级外语表二、学生成绩表记录学号课程编号成绩0502051101C101850502051103C101700502051101C102900502051103C103750502051104C106600502051105C106520502051108C10486实验5:表的修改与维护1.实验目的:掌握表结构的修改方法掌握表记录的追加、删除、插入的基本方法142.实验内容:2.1表结构的修改在上面实验的学生档案表中添加“备注”字段,输入每个学生的特长及获奖情况。2.2表记录的追加在学生档案表尾部追加一条新的记录:0502051109,邓萌,男,05/01/81,化学152.3表记录的删除物理删除学生档案表中的第6条记录(见下表)2.4表记录的插入在学生档案表的第2条与第3条记录之间插入一条记录:0502051108,李霞,女,09/08/80,生物。实验6:表的复制与导入导出1.实验目的:掌握表的复制方法掌握表的导出导入方法2.实验内容:(1)将学生.dbf表复制为文件名为档案.dbf的表。16(2)仅复制学生.dbf表的结构,新表命名为xsh.dbf。任意输入两条记录并将其添加到学生.dbf的表尾。(3)将学生.dbf表导出生成Excel表格。17实验7:表顺序的组织与定位检索1.实验目的:掌握表的物理排序掌握索引的建立方法掌握索引排序掌握索引查询掌握利用命令建立非结构复合索引文件并进行查询的方法。2.实验内容:(1)使用sort命令对表文件学生.dbf进行排序,并建立新的排序文件。要求按性别降序排列,当性别相同时再按照出生日期升序排列,建立排序文件学生2.dbf。18(2)利用标设计器对表文件学生.dbf建立关于学号、姓名、院系的结构复合索引文件,其中以学号为候选索引,以姓名为普通索引,以院系为普通索引。(3)对表文件学生.dbf利用命令按“姓名”进行索引排序。19(4)使用seek命令在学生.dbf中检索姓名为“李咏”的学生,并显示该学生情况。(5)利用命令对表文件学生.dbf按出生年和性别建立非结构复合索引文件fsy.cdx,并显示;20(6)在已建立索引的学生.dbf中查找第一个1980年出生的男生情况。实验8:表数据的计算统计1.实验目的:掌握按条件统计记录数掌握按条件求和掌握按条件求平均值掌握按条件分类汇总掌握通过函数进行计算的方法。2.实验内容:(1)利用命令统计表学生.dbf中物理系的女生人数。21(2)利用命令统计学生成绩表中成绩的和。(3)利用命令统计学生成绩.dbf中所有学生的平均成绩。22(4)利用命令对学生成绩.dbf中所有学生,计算每个学生的总成绩,并将结果存入tabel1.dbf。(5)利用命令求学生成绩表中课程编号为“C106”的人数、最高成绩、最低成绩、平均成绩,并将结果存入相应变量中,然后显示变量的值。实验9:多表操作1.实验目的:掌握在不同工作区打开不同的表文件并显示的方法。掌握利用命令建立表间临时关联掌握使用数据库工作期,建立表间临时关联掌握实现表间的物理连接掌握实现表间的数据更新的方法。2.实验内容:(1)分别利用命令和数据工作期两种方法,分别在1,2,3号工作区打开表文件:学生.dbf,课程.dbf,学生成绩.dbf。并在1号工作区显示课程.dbf的课程名称字段,在2号工作区显示学生成绩.dbf中的课程编号和成绩字段。(2)根据表文件学生.dbf、课程.dbf、学生成绩.dbf,使用命令序列建立关联,显示每个学生的选课情况及成绩。要求显示该学生的学号、姓名、课程编号、课程名称、成绩。(3)根据表文件学生.dbf、课程.dbf、学生成绩.