VFP实验指导(一)
实验一 项目管理器的使用(1学时)
一、实验目的
1、 熟悉VFP系统环境的使用。
2、 熟悉VFP环境设置
3、 掌握项目掌握器的使用。
二、实验内容
1、在D盘根目录下建立一个“专业班级学号+VFP实验”文件夹。(如:广告060201VFP实验)
2、建立项目
在上述文件夹下新建名为COLLEGE.PJX的项目,并在项目中新建一名为TEACH.TXT的文本文件,文本文件的内容不限。3、在该文件夹下新建数据库文件SBGL.DBC。
4、在SBGL.DBC数据库中建立具有如下结构的表文件STUD.DBF:
字段 字段名 类型 宽度 小数 1 学号字符型 4
2 姓名字符型 8
3 性别逻辑型 1
4 出生日期日期型 8
5 系名字符型 10
5、按“学号”字段升序建立名为“学号”的主索引, 并输入如下3条记录:
记录号学号 姓名 性别 出生日期 系名
10001 王平 .T. 01/01/80 计算机
20002 张小强 .T. 01/01/80 会计
30003 赵峰 .T. 01/01/80 计算机
6、将上述建立的文件夹设置为“默认目录”。
7、将日期格式设置为“月/日/年”的格式。
三、实验要求
1、完成实验任务并将有关的实验结果及过程记录保存在电脑或U盘上。
实验二 数据类型、函数和表达式(1学时)
一、实验目的:
1、 深入了解VFP的数据类型与存储类型,以及常量、变量、函数和表达式的应用。
二、实验内容:
1、判断常量或表达式的类型,并用Type()函数加以验证。
(1){^2002/7/14} D
(2).T. L
(3)”I like this game!” C
(4)2<3 OR ’B’>’A’ L
(5)31415E-4 N
(6)$2000.46738 Y
(7){^2002/09/13 21:34:56} T
(8){2002-09-13}-{2002-09-10} N
(9)[It’s a book…] C
(10)8<>9 AND 9==9 L
2、试用函数完成操作
(1)取出当前日期,并将当前日期转换成字符型,接在字符“今天的日期是:”后显示输出。
?”今天的日期是:”+dtoc(date())
(2)从字符串“北京2008年奥运会”中分别取出字符串“2008”,“奥运会”。
?Substr(“北京2008年奥运会”,5,4) ?Substr(“北京2008年奥运会”,11,6)
(3)把字符串“北京-”,数字2008和字符串“-奥运会”连接起来,形成字符串“北京-2008-奥运会”。
? “北京-”+str(2008,4)+“-奥运会”
(4)判断子字符串“奥运会”是否包含在字符串“北京2008年奥运会”中,并给出该子串在长字符串中的位置。
?at(“奥运会”, “北京2008年奥运会”,1)
(5)求出字符串“北京2008年奥运会”的长度。
?len(“北京2008年奥运会”)
(6)用随机数函数产生一个任意的3位整数。
?int(rand()*1000)
(7)已知字符型变量PI的值“3.1415”,试将PI的数值用&替换出来,并与100相加。
Pi=”3.1415” ?&pi+100
(8)试将字符串“BEIJING”转换“BeiJing”的形式。
?substr(“BEIJING”,1,1)+lower(substr(“BEIJING”,2,2))+ substr(“BEIJING”,4,1)+
lower(substr(“BEIJING”,5,3))
(9)试用日期函数将当前日期与时间转换成“yyyy年mm月dd日hh时mm分ss秒”的格式。例如:2002年9月1日9时20分10秒。
?str(year(date()),4)+”年”+ str(month(date()),2)+”月”+ str(day(date()),2)+”日”+
Substr(time(),1,2)+”时”+ Substr(time(),4,2)+”分”+ Substr(time(),7,2)+”分”
(10)求字母“Z”与字母“A”的ASCII码差值。
?asc(“Z”)-asc(“A”)
三、实验要求:
1、完成实验任务并将有关的实验结果及过程记录保存在电脑。
实验三 表和数据库的操作(1学时)
一、实验目的
1、 熟练数据库表设计器和数据库设计的基本操作,
2、 掌握多表间关系的建立。
3、熟悉表的命令的操作。二、实验内容:
1、 新建一个项目文件: 学生管理.pjx
2、 新建一个数据库文件:学生管理.dbc
3、 利用数据库设计器:在学生管理.dbc数据库中添加三张表student表、grade表和course表。
4、 建立student表、grade表和course表。
student表结构如下:
字段 字段名 类型 宽度 小数
1 学号 C 5
2 姓名 C 8
3 性别 L 1
4 出生日期 D 8
5 专业 C 8
6 奖学金 N 7 2
按“学号”字段升序建立名为“学号”的主索引, 并输入如下6条记录:
记录号 学号 姓名 性别 出生日期 专业 奖学金
1 99001 王强 .T. 1980/06/01 计算机 250.00
2 99002 李英 .F. 1982/12/05 电子 200.00
3 99003 赵力 .T. 1979/06/05 金融 150.00
4 99004 黄伟 .T. 1981/10/09 电子 150.00
5 99005 陈静 .F. 1980/05/24 计算机 300.00
6 99006 周明 .F. 1980/02/15 金融 200.00
grade 表结构如下:
字段 字段名 类型 宽度 小数
学号 C 5
课程号 C 4
成绩 N 6 2
按“学号”字段升序建立名为“学号”的普通索引,按“课程号”字段升序建立名为“课程号”的普通索引, 并输入如下记录:
记录号 学号 课程号 成绩
1 99001 C001 87.00
2 99001 c003 80.00
3 99002 c006 80.00
4 99003 c002 78.00
5 99003 c005 78.00
6 99003 c002 85.00
7 99004 c001 86.00
8 99004 c006 92.00
9 99005 c001 86.00
10 99005 c001 75.00
11 99006 c002 68.00
12 99006 c005 68.00 COURSE 表结构如下:
字段 字段名 类型 宽度 小数
1 课程号 C 4
2 课程名 C 10
3 课时 N
4 学分 N
按“课程号”字段升序建立名为“课程号”的主索引, 并输入如下记录:
记录号 课程号 课程名 课时 学分1 C001 高等数学 72 4
2 C002 大学英语 90 5
3 C003 数字电路 60 3
4 C004 数据库原理 54 3
5 C005 会计学原理 54 3
6 C006 计算机基础 36 2 5、利用数据库设计器建立student表和grade表之间的一对多的关系。
6、利用数据库设计器建立course表和grade表之间的一对多的关系。 7、在student表中为字段设置有效性规则,要求学号不能为空。
8、以course表为例,设置记录有效性规则。要求每学分对应的课时至少应在18学时以上。
二、实验要求
1、完成实验任务并将有关的实验结果及过程记录保存在电脑或U盘上。
实验四 多表操作及表的操作命令
一、 实验目的:
1、 熟悉利用数据工作期建立表间的临时关系。
2、 熟悉常用的表操作命令。
二、 实验内容:
1、 利用数据工作期建立student表和grade表间的临时关系,并浏览其结果,分析其与永久关系的区别。
区别:若两个表具有临时关系,则打开这两个表的时候,选择父表中的记录时,子表会自动显示与 父表有联系的记录而永久关系不会。临时关系是临时的,随着表的关闭,临时关系也会打断,而永久关系不会。
2、 练习常用的表操作命令。
打开关闭表命令:Use [<表名>]
表记录显示的命令:list、display。注意各命令选项的使用以及list与display的区别。
表记录修改命令:edit、browse、replace命令的使用。尤其注意replace命令的使用,以及与其他两个命令的区别。
记录删除与恢复命令:delete、pack、zap和recall命令。注意区分逻辑删除与物理删除的区别。
表记录的定位命令:绝对定位命令go[to]<记录号> 和相对定位命令 skip[+/-]
注意绝对定位与相对定位的区别,尤其对于索引文件已打开的表文件。
表记录的索引:建立索引index命令 、打开索引set index to、设置控索引 set order to
三、 实验要求:
1、完成实验任务并将有关的实验结果及过程记录保存在电脑或U盘上。
