当前位置:文档之家› VFP上机试题(命令的使用)

VFP上机试题(命令的使用)

VFP上机试题(命令的使用)
VFP上机试题(命令的使用)

VFP数据库试题

(1)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:更新rsda数据表中全体人员的“应发工资”,其中,应发工资=基本工资+补贴-公积金。

Replace all应发工资with 基本工资+补贴-公积金

(2)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:统计每位男老师各自讲授的课程数目。

SELECT rsda.姓名, rsda.性别, count(kcm.课程名) FROM rsda!kcm INNER JOIN rsda!rsda ON Kcm.工号= Rsda.工号WHERE Rsda.性别= "男" GROUP BY Rsda.姓名

(3)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

请从下面两小题中选作一题:

填写VFP命令,要求将记录指针定位在第一条1978年出生的女性职工记录。

locate for year(出生年月)=1978 .and. 性别=”女”

(4)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:按照“应发工资”降序形式显示所有人员的信息。Index on -应发工资to abc

(5)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:按照rsda数据表中“部门”升序生成一个名为“人事表1”的新表,其中包含4个字段:工号、姓名、性别和部门。Sort to人事表1 on部门/a fields工号,姓名,性别,部门

(6)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命

令可以使用SQL语句或VFP命令)

要求:为rsda数据表插入一个新纪录,记录内容为:何晓冰,女,1977年8月20日出生,已婚,工号为10011,基本工资为1500,补贴为600,公积金为50。

insert into rsda value("10011","何晓冰","女

",ctod("08/20/77"),.T.,"",1500,600,50,0,"")

(7)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:显示男教师讲授的所有课程名。

SELECT Rsda.姓名, Rsda.性别, Kcm.课程名FROM

rsda!kcm INNER JOIN rsda!rsda ON Kcm.工号= Rsda.工号WHERE Rsda.性别= "男"

(8)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:计算补贴的平均值、公积金的平均值,并将结果分别赋给变量rjbt、rjgjj

Average 补贴, 公积金to rjbt,rjgjj

(9)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:按照“公积金”降序形式显示所有人员的信息。

Index on -公积金to abc

(10)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:将rsda数据表中“基础部”的全体人员的“补贴”增加150元。

Replace 补贴with补贴+150 for部门=”基础部”

(11)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:显示讲授“英语阅读”课程的每位老师的姓名、年龄。SELECT Rsda.姓名, year(date())-YEAR(Rsda.出生年月)

as 年龄FROM rsda!kcm INNER JOIN rsda!rsda ON Kcm.工号= Rsda.工号WHERE Kcm.课程名= "英语阅读"

(12)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:按照“公积金”升序形式显示所有人员的信息。

Index on 公积金to abc

(13)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:统计每位女老师各自讲授的课程数目。

SELECT Rsda.姓名, Rsda.性别, count(Kcm.课程名) FROM rsda!kcm INNER JOIN rsda!rsda ON Kcm.工号= Rsda.工号WHERE Rsda.性别= "女" GROUP BY Rsda.姓名

(14)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否

(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:显示讲授“英语写作”课程的每位老师的姓名、年龄。SELECT Rsda.姓名, year(date())-YEAR(Rsda.出生年月) as 年龄FROM rsda!kcm INNER JOIN rsda!rsda ON Kcm.工号= Rsda.工号WHERE Kcm.课程名= "英语写作"

(15)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:按照“补贴”升序形式显示所有人员的信息。

Index on 补贴to abc

(16)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:显示公积金的最小值和最大值,并将结果分别赋给变量mingjj、maxgjj。

Calc min(公积金),max(公积金) to mingjj,maxgjj

(17)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:将rsda数据表中“部门”字段的“总务处”改为“后勤集团”。

Replace 部门with “后勤集团”for 部门=”总务处”

(18)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:计算教务处人员的基本工资的平均值和最大值。Average 基本工资for 部门=”教务处” to a1

Calc max(基本工资) for 部门=”教务处” to a2

(19)设有数据库“rsda”(,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:统计讲授“计算机文化基础实验”课程的教师中“补贴”一项的最高值,并将结果赋给变量A57(或者新字段A57)。

SELECT MAX(Rsda.补贴) as A57 FROM rsda!kcm INNER JOIN rsda!rsda ON Kcm.工号= Rsda.工号WHERE Kcm.课程名= "计算机文化基础实验"

(20)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:显示女教师讲授的所有课程名。

SELECT Rsda.姓名, Rsda.性别, Kcm.课程名FROM

rsda!kcm INNER JOIN rsda!rsda ON Kcm.工号= Rsda.工号WHERE Rsda.性别= "女"

(21)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:物理删除rsda数据表中1980年以后(含1980年)出生的部门为“教务处”的职工记录。

Delete for year(出生年月)>=1980 .and. 部门=”教务处”Pack

(22)设有数据库“rsda”,其中,数据表rsda包含以下字段:

工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:统计“张运生”讲授的课程门数,并将结果赋给变量A57(或者新字段A57)

SELECT COUNT(Kcm.课程名) as A57 FROM rsda!kcm INNER JOIN rsda!rsda ON Kcm.工号= Rsda.工号WHERE Rsda.姓名= "张运生"

(23)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:按照“出生年月”升序形式显示所有人员的信息。Index on出生年月to abc

(24)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:显示30岁(含30岁)以下的人员的所有信息。

List for (year(date())-year(出生年月))<=30

(25)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:显示“基础部”每位老师所讲授的所有课程名。SELECT Kcm.课程名FROM rsda!kcm INNER JOIN rsda!rsda ON Kcm.工号= Rsda.工号WHERE Rsda.部门= "基础部"

(26)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:显示应发工资的最小值和最大值,并将结果分别赋给变量minyfgz、maxyfgz。

Calc min(应发工资),max(应发工资) to minyfgz,maxyfgz (27)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:统计男教工中基本工资超过1000元的人数,并将结果

赋给变量num

Count for性别=”男”.and. 基本工资>1000 to num (28)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:更新所有女教工的应发工资(其中:应发工资=基本工资+补贴-公积金)。

Replace 应发工资with基本工资+补贴-公积金for性别=”女”

(29)设有数据库“rsda”2,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:统计讲授“程序设计”课程的教师中“补贴”一项的最低值,并将结果赋给变量A57(或者新字段A57)。

SELECT MIN(rsda.补贴) as A57 FROM rsda!kcm INNER JOIN rsda!rsda ON Kcm.工号= Rsda.工号WHERE Kcm.课程名= "程序设计"

(30)设有数据库“rsda”,其中,数据表rsda包含以下字段:

工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:按照“补贴”降序形式显示所有人员的信息。

Index on -补贴to abc

(31)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:显示所有本年度还没有过生日(不含当日)的人员信息。

list for month(出生年月)>month(date()) .or. (month(出生年月)=month(date()) .and. day(出生年月)>day(date())) (32)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:计算基本工资和应发工资的平均值,并将结果分别赋给avg_sal1、avg_sal2。

Average 基本工资, 应发工资to avg_sal1,avg_sal2

(33)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:按照“出生年月”降序形式显示所有人员的信息。Index on -出生年月to abc

(34)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:统计每位教师讲授的课程数目。

SELECT Rsda.工号, Rsda.姓名,count(kcm.课程名)

FROM rsda!rsda INNER JOIN rsda!kcm ON Rsda.工号= Kcm.工号GROUP BY Rsda.工号

(35)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:显示讲课教师中年龄最大的教师的姓名和性别。SELECT Rsda.姓名, Rsda.性别, min(Rsda.出生年月)

FROM rsda!rsda inner join rsda!kcm on kcm.工号=rsda.工号

(36)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:统计30岁(不含30岁)以上的老师各自讲授的课程数目。

SELECT Rsda.姓名,COUNT(Kcm.课程名) as 课程数目, year(date())-year(Rsda.出生年月) as 年龄FROM

rsda!kcm INNER JOIN rsda!rsda ON Kcm.工号= Rsda.工号WHERE year(date())-year(Rsda.出生年月) >= 30 GROUP BY Rsda.姓名

(37)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

填写VFP命令,要求将记录指针定位在第一条1977年出生的男性职工记录。

Locate for year(出生年月)=1977 and性别=”男”

(38)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:将rsda数据表中“部门”字段的“学生处”改为“学生就业处”。

Replace部门with ”学生就业处”for部门=”学生处”(39)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

填写VFP(不考虑表的打开和关闭),要求以姓名和基本工资为索引关键字建立一个结构复合索引文件,索引名为“xmgz”。

index on 姓名+str(基本工资) tag xmgz

(40)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:物理删除rsda数据表中部门为“教务处”的所有女性职

工的记录。

Delete for 部门=”教务处” and性别=”女”

Pack

(41)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:按照“姓名”升序(字典序列)形式显示所有人员的信息。

Index on姓名to bm

(42)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:按照“部门”升序(字典序列)形式显示所有人员的信息。

Index on部门to bm

(43)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命

令可以使用SQL语句或VFP命令)

要求:显示讲课教师中年龄最小的教师的姓名和性别。SELECT Rsda.姓名, Rsda.性别, MAX(Rsda.出生年月) FROM rsda!kcm INNER JOIN rsda!rsda ON Kcm.工号= Rsda.工号

(44)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:统计讲授“英语听力”课程的老师的补贴的平均值,并将结果赋给变量A59(或者新字段A59)。

SELECT AVG(Rsda.补贴) as A59 FROM rsda!kcm INNER JOIN rsda!rsda ON Kcm.工号= Rsda.工号WHERE Kcm.课程名= "英语听力"

(46)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:计算部门为“基础部”、基本工资不足1000元的人员的

补贴的平均值。

Average 补贴all for 部门=”基础部” and 基本工资

<1000

(47)设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句或VFP命令)

要求:显示所有本年度已经过完生日(不含当日)的人员信息。

list for month(出生年月)

VFP中常用命令集

VFP中常用命令集 一、主要命令: 1、CREATE 作用:建立一个新的表。 格式:CREATE [<文件>|?](注意,命令字符可取前面四个字符,后面可省略不写,即CREA,下同;中括号表示其中的参数是可选的;|管道符号表示两个参数只能选择一个,不能同时选择,下同。) 说明:文件指建立以.dbf为扩展名的VFP数据库文件,在命令后面加上一个问号表示系统会弹出 对话框,要求用户输入想要建立的表名。在命令中不加文件名或问号系统也会弹出对话框,要求用 户输入想要建立的表名。 2、MODIFY STRUCTURE 作用:显示表文件结构,并允许修改此表的结构。 格式:MODIFY STRUCTURE 说明:只有在用USE命令打开表文件以后,才能显示或修改表文件的结构。3、APPEND 作用:在当前表的尾部(无论表中有无记录)追加记录(在当前表指当前正使用的表)。 格式:APPEND [BLANK] 说明:在APPEND命令后面加上BLANK参数表示在当前表的尾部添加一条空白记录。无BLANK参数时,表示在当前表的尾部添加一条记录并要求用户输入相应的字段内容。 4、INSERT 作用:在表文件中间插入一个新记录。 格式:INSERT [BEFORE] [BLANK] 说明:INSERT 在当前记录后插入一记录; INSERT BEFORE 在当前记录前插入一记录; INSERT BEFORE BLANK 在当前记录前插入一空记录。 5、BROWSE 作用:主要用于打开浏览窗口,查阅表文件并同时进行修改。 格式:BROWSE 6、USE 作用:打开和关闭表文件。 格式:USE [<文件名>]

VFP上机操作题(附解答过程)

VFP上机操作题 一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分) 在考生目录下完成如下操作: 1. 打开"订货管理"数据库,并将表order_list添加到该数据库中。 2. 在"订货管理"数据库中建立表order_detail,表结构描述如下: 订单号字符型(6) 器件号字符型(6) 器件名字符型(16) 单价浮动型(10.2) 数量整型 3. 为新建立的order_detail表建立一个普通索引,索引名和索引表达式均是"订单号"。 4. 建立表order_list和表order_detail间的永久联系(通过"订单号"字段)。 解答: 1、方法1:命令方法 在命令窗口直接输入下列两条命令:open database 订货管理 add table order_list 方法2:菜单方法 单击“文件”菜单,选择“打开”项。在文件类型中选择“数据库”,单击“订货管理”,单击“确定”即打开了数据库,并进入到数据库设计器。 在数据库设计器中的空白位置,单击鼠标右键,在弹出的快捷菜单中单击“添加”命令。将题目要求的自由表添加到数据库中。 2、方法1:菜单操作。在数据库设计器的空白处单击鼠标右键,在弹出的菜单中选择“新建表”,进入“表设计器”后,分别输入各字段的字段名、类型、宽度和小数位数,最后单击“确定”按钮。 方法2:命令方法,在命令窗口中直接输入如下命令: create table order_detail(订单号C(6),器件号C(6),器件名C(16),单价N(10,2)) 3、方法1:菜单方法。打开order_detail表的设计器,选择索引页框,输入索引名、选择索引类型、输入索引表达式,然后单击“确定”按钮。 方法2:命令方法。在命令窗口中直接输入如下命令: index on 订单号tag 订单号 4、首先打开数据库设计器。通过拖动索引建立表间永久关系。 二、简单应用(2小题,每题20分,计40分) 在考生目录下完成如下简单应用: 1.将order_detail1表中的全部记录追加到order_detail表中,然后用SQL SELECT语句完成查询:列出所有订购单的订单号、订购日期、器件号、器件名和总金额(按订单号升序,订单号相同再按总金额降序),并将结果存储到results表中(其中订单号、订购日期、总金额

VFP常用函数大全

VFP常用函数大全 一.字符及字符串处理函数: 字符及字符串处理函数的处理对象均为字符型数据,但其返回值类型各异. 1.取子串函数: 格式:substr(c,n1,n2) 功能:取字符串C第n1个字符起的n2个字符.返回值类型是字符型. 例:取姓名字符串中的姓. store "王小风" to xm ?substr(xm,1,2) 结果为:王 2.删除空格函数:以下3个函数可以删除字符串中的多余空格,3个函数的返回值均为字符型. trim(字符串):删除字符串的尾部空格alltrim(字符串):删除字符串的前后空格 ltrim(字符串):删除字符串的前面的空格例:去掉第一个字符串的尾空格后与第二个字符串连接 store "abcd " to x store "efg" to y ?trim(x)+y abcdefg 3.空格函数: 格式:space(n) 说明:该函数的功能是产生指定个数的空格字符串(n用于指定空格个数). 例:定义一个变量dh,其初值为8个空格store space(8) to dh 4.取左子串函数: 格式:left(c,n) 功能:取字符串C左边n个字符. 5.取右子串函数: 格式:right(c,n) 功能:取字符串c右边的n个字符例:a="我是中国人" ?right(a,4) 国人?left(a,2) 我 6.empty(c):用于测试字符串C是否为空格. 7.求子串位置函数: 格式:At(字符串1,字符串2) 功能:返回字符串1在字符串2的位置 例:?At("教授","副教授") 2 8.大小写转换函数: 格式: lower(字符串) upper(字符串) 功能:lower()将字符串中的字母一律变小写;upper()将字符串中的字母一律变大写例: bl="FoxBASE" ?lower(bl)+space(2)+upper(bl) foxbase FOXBASE 9.求字符串长度函数: 格式:len(字符串) 功能:求指定字符串的长度 例:a="中国人" ?len(a) 6 二.数学运算函数: 1.取整函数: 格式:int(数值) 功能:取指定数值的整数部分. 例:取整并显示结果?int(25.69) 25 2.四舍五入函数: 格式:round(数值表达式,小数位数) 功能:根据给出的四舍五入小数位数,对数值表达式的计算结果做四舍五入处理 例:对下面给出的数四舍五入并显示其结果 ?round(3.14159,4),round(2048.9962,0),round(2048.9962,-3

VFP6.0学习笔记(修订)

VFP6.0学习笔记2008年4月10日

目录 一、VF6.0的主索引 二、VF6.0表单建立 三、VFP中”退出”按扭代码和VFP中猜数游戏中”开始”程序码 四、VF6.0表单居中 五、VFP中调用焦点方法: 六、Vf6.0中两个表的链接查询 七、VFP常用命令及用法实例 八、在VFP中显示某特定条件的数据记录 九、VFP中身份证号码修复 十、VFP中计算年龄 十一、VFP程序设计中英文注释 十二、VFP中统计年龄 十三、在VFP中设置焦点 十四、VFP中几个常用函数1 十五、VFP中时间函数 十六、VFP中的字符串替换命令 十七、VFP中的常量 十八、在一个表内查询有关字段内容的方法: 十九、VFP的多表查询

一、VF6.0的主索引 VF6.0中的主索引的用途,是指在表中不能出现重复记录. 二、VF6.0表单建立 改变容器大小选项:在“全部”选项卡里输入Height(高度).Width(宽度值) 改变图片显示容器属性:在属性框中选择Stretch.默认是0‘剪载’,改成变填充,可将图片在容器中全部显示. 修改窗体介绍:在属性栏选Caption.添加窗体背景图,在属性栏里选Picture,点上面的浏览‘按钮’,进行查找图片文件. 三、VFP中”退出”按扭代码和猜数游戏中”开始”程序码 1、退出: 在方法程序中双击Click Event,输入: thisform.release&&本表单.释放 2、开始: https://www.doczj.com/doc/9814626847.html,bel1.visible=.f.&&重新开始,abel1标签的可见为假,即赢字隐去. https://www.doczj.com/doc/9814626847.html,bel2.visible=.f.&&将label2标签的可见为假,即"输"字隐去. thisform.text1.value=int(rand()*10)&&设置本表单text1文本框的随机值.本例中随机值是10。 thisform.text2.value=int(rand()*10)&&设置text2文本框

VFP常用命令及用法

VFP常用命令及用法、实例 命令中用到的范围: ALL:命令对表中所有记录起作用,即执行时从首记录到末记录,最记录指针停在数据库的末尾。 NEXT 命令作用于从当前记录开始到当前记录后条记录为止的范围内的记录,最后记录指针指向作用范围内的最后一条记录处。NEXT 1表示仅作用于当前记录。 Record 命令作用于记录号为的记录。 TEST 命令作用范围从当前记录开始到表的最后一个记录为止 命令中的FOR子句只作用于满足条件的记录。 一、基本命令 1. 打开和关闭数据表 USE [<数据表名>] 当省略选项时为关闭当前数据表 CLOSE ALL 关闭所有数据表

2. 选择当前工作区 SELECT <工作区号|数据表名|0> 功能:选择当前工作区。可以直接选择工作区号,也可通过指定其中已经打开的数据表别名来指定工作区。 SELECT 0 是选择当前未使用的最低编号的工作区 3. 增加记录 APPEND BLANK 在当前表的尾部追加一个空白记录 INSERT BLANK 在当前表的当前记录之后插入一条空白记录 INSERT BLANK BEFORE 在当前表的当前记录之前插入一条空白记录 注意:在表建立索引后,INSERT的功能与APPEND相同 4. 替换字段的值 REPLACE [范围] <字段1> WITH <表达式1>[, <字段2> WITH <表达式2>, ...<字段n> WITH <表达式n>] [FOR ] 功能:计算表达式的值,并填入指定字段,当范围和条件选项省略时只对当前记录操作。 5. 删除记录 DELETE [范围] [FOR 条件]

vfp命令

VF命令一览表 一、命令 https://www.doczj.com/doc/9814626847.html,e 表名打开表 2.List 显示表记录,但不能修改 3.browse 浏览表记录,可以修改 4.display 显示记录指针指向的记录 5.append 追加记录 6.append blank 追加空白记录7.insert blank 插入空白记录8.delete 逻辑删除记录,记录前出现星号9.pack 物理删除,将逻辑删除的记录彻底删除10.recall 记录恢复11.zap 删除表里的所有记录12.go n 指向第n条记录13.go top 指向第一条记录14.go bottom 指向最后一条记录15.skip n 往下跳n条记录16.skip -n 往上跳n条记录17.? 从屏幕的下一行的第一列起显示结果18.? ? 从当前行当前列起显示结果https://www.doczj.com/doc/9814626847.html,e sb copy to sb() 复制sb表给sb()表20.recno() 记录号函数21.bof() 上溢出22.eof() 下溢出23.dimension x(4) 定义数组x,里面有四个元素,其中每个元素的默认值为.F. declare和dimension 相同24.replace 替换25.add 表示增加字段26.distinct 不重复记录27.error 错误28.continue 继续29.else if 否则30.column 列31.input 显示数值32.accept 显示字符串33.wait 是弹出的一个信息框34.drop 删除字段或删除表35.otherwise 其它情况36.check 规则37.cursor 临时表38.build 连编 二、VF里文件类型 1.项目 .pjx project 2.数据库 .dbc database 3.表 .dbf table 4.菜单.mnx .mpr men 5.程序 .prg 6.表单 .scx form 7.报表 .frx report 8.查询.qpr query 9.视图 .vue view 10.文件 .txt 11.备注型文件 .fpt 三、例题 1.creat table student(学号c(6),姓名c(8),性别c(2),年龄n(2)) 创建学生表

VFP中常用命令

VFP中常用命令 一、数据库的建立、打开、关闭和删除 建立数据库: CREATE DATABASE [database name|?] 从磁盘中删除数据库: CREATE DATABASE [database name|?] ELETE DATABASE database name DELETE DATABASE database name |? 打开数据库: OPEN DATABASE [EXCLUSIVE|SHARED][NOUPDATE] 打开数据库设计器(允许用户按交互方式编辑当前数据库): MODIFY DATABASE [database name|?] 指定的数据库database name为当前数据库。 指定当前的数据库: SET DATABASE TO [database name] Database name必须为已经打开的数据库。如果省略数据库名称database name则不指定当前数据库(没有当前数据库)。 关闭数据库: CLOSE DATABASE [ALL] 关闭当前数据库,如果带ALL子句,则关闭所有打开的数据库。 二、数据表和视图的建立、打开、关闭和删除 建立数据表(SQL命令): CREATE TABLE | DBF table name (Col_ name1 Type1 [NOT NULL/NULL] [{,Col _n ame2 Type2 [NOT NULL/NULL]}...] ) table_ name是所创建的数据表的名字。 Col_name1,Col_name2,...是表中列的名。 Type1, Type2...是相应列的数据类型(VFP的数据类型见表3-9)。 如果说明为NOT NULL,则列中不允许分配空值(这种情况下,列不能包含空值,如果插入空值,将返回错误信息)。 向当前打开的数据库中添加数据表: ADD TABLE table name|? 从当前打开的数据库中删除数据表: REMOVE TABLE table name|? [DELETE]

VFP上机操作题(数据库建立与显示答案)

Visual Foxpro上机操作题(数据表建立与显示) 说明:本答案只写操作命令,具体操作自己上机完成 根据要求完成下列操作: 1.建立一个名为ys.dbf的数据表,其结构如下: 字段字段名类型宽度小数位 1 姓名字符型 8 2 性别字符型 2 3 固定工资数值型 8 2 4 津贴数值型 6 2 5 扣杂费数值型 6 2 6 实发金额数值型 8 2 7 领款日期日期型 8 8 退休逻辑型 1 9 签名字符型 6 10 备注备注型 10 注意:结构输入完成后,按CTRl+W存盘。 2.录入如下内容: 记录号姓名性别固定工资津贴扣杂费实发金额领款日期退休签名备注 1 吴均荣女 527.00 120.00 10.50 01/01/89 .T. memo 2 肖才坤男 527.00 120.00 10.50 05/05/99 .F. memo 3 李思强男 527.00 120.00 10.50 05/05/95 .T. memo 4 司马文华女 527.00 120.00 10.50 05/05/98 .T. memo 5 钟小渠男 437.00 120.00 10.50 05/05/97 .F. memo 6 赵明明女 422.00 120.00 10.50 05/05/96 .F. memo 7 欧阳明月女 396.50 120.00 10.50 05/05/92 .F. memo 3.打开数据库ys.dbf 4.显示数据库结构. 5.修改数据库结构,将实发金额的宽度改为7,小数点后有2位. 注意:修改结构时一般不能同时修改字段名和类型,也不能同时修改字段名和宽度,否则有可能造成

VFP函数大全

VFP函数大全 %运算符用于计算并返回两个数值表达式相除之后的余数 $(包含)运算符用于进行字符表达式之间的包含关系运算,如果一个字符表达式包含在另一个字符表达式之中,则函数返回真 ABS() 计算并返回指定数值表达式的绝对值 ACLASS() 用于将一个对象的父类名放置于一个内存数组中 ACOPY() 把一个数组的元素拷贝到另一个数组中 ACOS() 计算并返回一个指定数值表达式的余弦值 ADATABASES() 用于将所有打开的数据库名和它的路径存入一个内在变量数组中ADBOBJECTS() 用于把当前数据库中的连接、表或SQL视图的名存入内存变量数组中ADEL() 用于从一维数据中删除一个元素,或从二维数组中删除一行或者一列元素 ADIR() 将文件的有关信息存入指定的数组中,然后返回文件数 AELEMENT() 通过元素的下标,返回元素号 AFIELDS 将当前的结构信息存入数组中,然后返回表中的字段数 AFONT() 将可用字体的信息存入数组中 AERROR() 用于创建包含VFP或ODBC错误信息的内存变量 AINS() 在一维数组中插入一个元素或在二维数组中插入一行或一列元素 AINSTANCE() 用于将类的所有实例存入内存变量数组中,然后返回数组中存放的实例数ALEN() 返回数组中元素、行或者列数 ALIAS() 返回当前工作区或指定工作区内表的别名 ALLTRIM() 从指定字符表达式的首尾两端删除前导和尾随的空格字符,然后返回截去空格后的字符串 AMEMBERS() 用于将对象的属性、过程和成员对象存入内存变量数组中 ANSITOOEM() 将指定字符表达式中的每个字符转换为MS-DOS(OEM)字符集中对应字符APRINTERS() 将Print Manager中安装的当前打印机名存入内存变量数组中 ASC() 用于返回指定字符表达式中最左字符的ASCII码值 ASCAN() 搜索一个指定的数组,寻找一个与表达式中数据和数据类型相同的数组元素ASELOBJ() 将活动的Form设计器当前控件的对象引用存储到内存变量数组中 ASIN() 计算并返回指定数值表达式反正弦值 ASORT() 按升序或降序排列数组中的元素 ASUBSCRIPT() 计算并返回指定元素号的行或者列坐标 AT() 寻找字符串或备注字段在另一字符串或备注字段中的第一次出现,并返回位置 ATAN() 计算并返回指定数值表达式的反正切值 ATC() 寻找字符串或备注字段中的第一次出现,并返回位置,将不考虑表达式中字母的大小写 ATCLINE() 寻找并返回一个字符串表达式或备注字段在另一字符表达式或备注字段中第一次出现的行号。不区分字符大小写 ATLINE() 寻找并返回一个字符表达式或备注字段在另一字符表达式或备注字段中第一次出现的行号 ATN2() 根据指定的值返回所有4个像限内的反正切值 AUSED() 用于将一次会话期间的所有表别名和工作区存入变量数组之中 BAR() 从用DEFINE POPUP命令定义的菜单中返回最近所选择的菜单项的编号,或返回一个

VFP常用函数、属性、事件和方法

VFP常用命令,函数,属性,事件和方法一.常用命令 1.CREATE TABLE-SQL 创建一个含有指定字段的表。 2.ALTER TABLE-SQL 以编程方式修改表的结构。 3.SELECT 激活指定工作区。 4.USE 打开一个表及其相关索引文件,或打开一个SQL视图。5.CLOSE TABLES 关闭所有打开数据库中的所有表。 6.COPY STRUCTURE 用当前选择的表结构创建一个新的空自由表。 7.COPY TO 用当前选定表的内容创建新文件。 8.RENAME TABLE 重命名当前数据库中的表。 9.BROWSE 打开浏览窗口。 10.A PPEND 在表的末尾添加一个或多个新记录。 11.A PPEND FROM 从一个文件中读入记录,添加到当前表的尾部。 12.G O/GOTO 将记录指针移到指定记录上。 13.L OCATE 按顺序搜索表,从而找到满足指定逻辑表达式的第一个记录。14.S EEK 在一个表中搜索首次出现的一个记录。 15.S KIP 使记录指针在表中向前或向后移动。 16.C ONTINUE 继续执行先前的LOCA TE命令。 17.E DIT 显示要编辑的字段。 18.D ELETE 给要删除的记录做标记。 19.D ELETE-SQL 给要删除的记录做标记。 20.P ACK 从当前表中永久删除有删除标记的记录。 21.R ECALL 恢复所选表中带删除标记的记录。

22.Z AP 从表中删除所有记录。 23.I NSERT-SQL 在表尾追加一个包含指定字段值的记录。 24.R EPLACE 更新表的记录内容。 25.U PDATE-SQL 以新值更新表中的记录。 26.S ET EXCLUSIVE 指定Visual FoxPro在网络上是以独占方式,还是以共享方式打开表文件。 27.S ET FILTER 指定访问当前表中记录时必须满足的条件。 28.S ET DELETED 指定Visual FoxPro 是否处理标有删除标记的记录。 29.S ET INDEX 打开一个或多个索引文件,供当前表使用。 30.S ET ORDER 指定表的主控索引文件或标识。 31.G A THER 将当前选定表中的当前记录的数据替换为某个数组、内存变量组或对象中的数据。32.S CATTER 从当前记录中把数据复制到一组内存变量或数组中。 33.O PEN DATABASE 打开一个数据库。 34.S ET DATABASE 指定当前数据库。 35.D ELETE DATABASE 从磁盘上删除数据库。 36.D ISPLAY DA TABASE 显示有关当前数据库的信息。 37.M ODIFY DATABASE 打开数据库设计器,让用户能够交互地修改当前数据库。 38.V ALIDATE DA TABASE 保证当前数据库中表和索引位置的正确性。 39.S ELECT-SQL 从一个表或多个表中检索数据。 40.D O 执行一个Visual FoxPro 程序或过程。 41.D O FORM 运行用表单设计器创建的、编译过的表单或表单集。 42.R EPORT 根据MODIFY REPORT或CREATE REPORE创建的报表定义文件,显示或打印报表。43.C ALCULATE 对表中的字段或包含字段的表达式进行财务和统计操作。

vfp上机试题

VFP上机试题 一、 (1)属性设置及程序改错题 gc245.scx的功能是:设计一个窗口,日历牌每10秒显示一次,每次显示10秒;系统时间的数字式表每秒显示一次新的时间。要求: ①设置计时器Timer1 和Timer2的属性 ②在编写的二个过程代码Timer1_Timer(),Timer2_Timer()中各有一个错误,请调试改正。调试改正中,每个过程代码只能改一处,并不得增删语句 timer1.timer: if https://www.doczj.com/doc/9814626847.html,bel1.visible=.t. https://www.doczj.com/doc/9814626847.html,bel1.visible=.f. else https://www.doczj.com/doc/9814626847.html,bel1.visible=.f. && .t. endif timer2.timer: if thisform. label1.caption!=time() && label2 https://www.doczj.com/doc/9814626847.html,bel2.caption=time endif (2)程序填空题 tk245.scx的功能是:当按下“求和”按钮时,计算S=1**2+(1**2+2**2)+(1**2+2**2+3**2)+…(1**2+2**2+3**2+…+10**2)。请在该程序空白(1)、(2)处,将其补充完整,以便得到正确答案,但不得增删原语句。 Command1.click: SET TALK OFF TOT=0 FOR N=1 TO 10 T=0 M=1 DO WHILE M<=N T=t+(1) M**2 M=M+1 ENDDO TOT=TOT+T ENDFOR ? 'S=',(2) TOT SET TALK ON RETURN 二、 1: 属性设置及改错题: gc291.scx的功能是:设计一个窗口,输入一个整数,按下"判断"按钮,若该整数是一负数,则显示"该数不是一个素数",若为素数,则显示"该数是一个素数",否则也显示"该数不是一个素数".要求:

VFP入门学习-VFP_上机试题(二)

VFP上机试题 一、上机环境设置(2分) 1、设置默认路径为d:\KS文件夹,VFP上机试题所需素材均在其中。除非题目要求,否则不要对KS文件夹中的文件进行重命名、复制、移动和删除操作 2、操作的所有文件均还是保存在ks文件夹中,最后将ks文件夹重命名为:学号(写完整)班级姓名后提交。 二、项目、数据库和表操作(30分) 打开考试素材目录中的项目文件JXGL,在该项目中已有一数据库JXSJ。 1.在JXSJ数据库中按如下表格所示的结构创建AB表,并按表格中的要求设置相关属性。 (1)设置AB表的表注释:参观人数; (2)设置日期字段的默认值:当前系统日期; (3)设置日期字段的显示类:微调框; (4)设置记录有效性规则:实际参观人数小于或等于售出门票数量; (5)创建普通索引,索引名为abcd,要求按实际参观人数与售出门票数量之比排序。 2.在AB表中输入如下记录: 3.给KC表中所有学分大于或等于5的记录加删除标记。 4.js表已存在主索引GH,索引表达式为GH;KCAP表已存在普通索引GH,索引表达式为GH。以js表为主表、KCAP表为子表,根据GH建立永久关系,并设置两表之间的参照完整性:更新级联、删除级联。 三、设计查询(20分) 已知教师表(JS)含有工号(gh,c)、姓名(xm,C)等字段;自由表图书借阅表(JYB)含有读者号(dzh,c)、分类号(flh,C)、借阅日期(jyrq,D)、还书日期(hsrq,D)等字段,教师的读者号与工号相同。按如下要求修改JXGL项目中的查询CHAXUN: 基于JS表和JYB表查询教师借书情况,计算过期罚款信息。要求:查询输出字段为dzh、 xm、罚款额;查询结果按罚款额降序排序;输出去向为文本文件TEMP。 注:罚款计算方法为30天以上超过部分每本每天0.10元,未还书者(即还书日期为空的 记录)不统计。 四、设计菜单(15分) JXGL项目中已存在菜单MENU,其中已定义了"文件"菜单栏及其中的"退出菜单"项。按如下要求设计菜单,菜单运行后的效果如图1所示。 1.在"文件"菜单栏右侧创建"数据管理"菜单栏。 2.在"数据管理"菜单栏下创建子菜单"查询"和"数据备份"。 3.为"查询"菜单项设置快捷键:F12。 4.在菜单项"查询"和"数据备份"之间插入分组线。 5.为"数据备份"菜单项设置过程代码: d=GETFILE("dbf"."*.dbf") USE &d COPY To bf1

vfp函数命令大全

vfp函数大全 %运算符用于计算并返回两个数值表达式相除之后的余数 $(包含)运算符用于进行字符表达式之间的包含关系运算,如果一个字符表达式包含在另一个字符表达式之中,则函数返回真 ABS() 计算并返回指定数值表达式的绝对值ACLASS() 用于将一个对象的父类名放置于一个内存数组中 ACOPY() 把一个数组的元素拷贝到另一个数组中ACOS() 计算并返回一个指定数值表达式的余弦值 ADATABASES() 用于将所有打开的数据库名和它的路径存入一个内在变量数组中 ADB OBJECT S() 用于把当前数据库中的连接、表或SQL视图的名存入内存变量数组中 ADEL() 用于从一维数据中删除一个元素,或从二维数组中删除一行或者一列元素 ADIR() 将文件的有关信息存入指定的数组中,然后返回文件数 AELEMENT() 通过元素的下标,返回元素号AFIELDS 将当前的结构信息存入数组中,然后返回表中的字段数 AFONT() 将可用字体的信息存入数组中AERROR() 用于创建包含VFP或ODBC错误信息的内存变量 AINS() 在一维数组中插入一个元素或在二维数组中插入一行或一列元素 AINSTANCE() 用于将类的所有实例存入内存变量数组中,然后返回数组中存放的实例数 ALEN() 返回数组中元素、行或者列数 ALIAS() 返回当前工作区或指定工作区内表的别名 ALLTRIM() 从指定字符表达式的首尾两端删除前导和尾随的空格字符,然后返回截去空格后的字符串 AMEMBERS() 用于将对象的属性、过程和成员对象存入内存变量数组中 ANSITOOEM() 将指定字符表达式中的每个字符转换为MS-DOS(OEM)字符集中对应字符APRINTERS() 将Print Manager中安装的当前打印机名存入内存变量数组中 ASC() 用于返回指定字符表达式中最左字符的ASCII码值 ASCAN() 搜索一个指定的数组,寻找一个与表达式中数据和数据类型相同的数组元素 ASELOBJ() 将活动的Form设计器当前控件的对象引用存储到内存变量数组中 ASIN() 计算并返回指定数值表达式反正弦值ASORT() 按升序或降序排列数组中的元素ASUBSCRIPT() 计算并返回指定元素号的行或者列坐标 AT() 寻找字符串或备注字段在另一字符串或备注字段中的第一次出现,并返回位置 ATAN() 计算并返回指定数值表达式的反正切值ATC() 寻找字符串或备注字段中的第一次出现,并返回位置,将不考虑表达式中字母的大小写ATCLINE() 寻找并返回一个字符串表达式或备注字段在另一字符表达式或备注字段中第一次出现的行号。不区分字符大小写 ATLINE() 寻找并返回一个字符表达式或备注字段在另一字符表达式或备注字段中第一次出现的行号 ATN2() 根据指定的值返回所有4个像限内的反正切值 AUSED() 用于将一次会话期间的所有表别名和工作区存入变量数组之中 BAR() 从用DEFINE POPUP命令定义的菜单中返回最近所选择的菜单项的编号,或返回一个从VFP 菜单所选择的一个菜单命令 BARCOUNT() 返回DEFINE POPUP命令所定义的菜单中的菜单项数,或返回VFP系统菜单上的菜单项数 BARPROMPT() 返回一个菜单项的有关正文BETWEEN() 确定指定的表达式是否介于两个相同类型的表达式之间 BITAND() 返回两个数值表达式之间执行逐位与(AND)运算的结果 BITCLEAR() 清除数值表达式中的指定位,然后再返回结果值 BITLSHIFT() 返回将数值表达式左移若干位后的结果值 BITNOT() 返回数值表达式逐位进行非(NOT)运算后的结果值 BITOR() 计算并返回两个数值进行逐位或(OR)运算的结果 BITRSHIFT() 返回将一个数值表达式右移若干位后的结果值 BITSET() 将一个数值的某位设置为1,然后返回结果值 BITTEST() 用于测试数值中指定的位,如果该位的值是1,则返回真,否则返回假 BITXOR() 计算并返回两个数值表达式进行逐位异或(XOR)运算后的结果 BOF() 用于确定记录指针是否位于表的开始处CANDIDATE() 如果索引标记是候选索引标记则返回真,否则返回假 CAPSLOCK() 设置并返回CapsLock键的当前状态CDOW() 用于从给定Date或Datetime类型表达式

计算机二级考试VF试题

计算机二级考试VF试题 计算机二级考试VF试题 一、基本操作题(共4小题,第1和2题是7分、第3和4题是8分) 在考生文件夹下,打开Ecommerce数据库,完成如下操作: 1.打开Ecommerce数据库,并将考生文件夹下的自由表OrderItem添加到该数据库。 2.为OrderItem表创建一个主索引,索引名为PK,索引表达式为"会员号+商品号";再为OrderItem创建两个普通索引(升序),一个的索引名和索引表达式均是"会员号";另一个的索引名和索引表达式均是"商品号"。 3.通过"会员号"字段建立客户表Customer和订单表OrderItem 之间的永久联系(注意不要建立多余的联系)。 4.为以上建立的联系设置参照完整性约束:更新规则为"级联";删除规则为"限制";插入规则为"限制"。 二、简单应用(2小题,每题20分,计40分) 在考生文件夹下完成如下简单应用:索取计算机二级机考题库联系微信号:3026287336 1.建立查询qq,查询会员的会员号(来自Customer表)、姓名(来自Customer表)、会员所购买的商品名(来自article表)、单价(来自OrderItem表)、数量(来自OrderItem表)和金额(OrderItem.单价*OrderItem.数量),结果不要进行排序,查询去向是表ss。查询保存为qq.qpr,并运行该查询。 2.使用SQL命令查询小于30岁(含30岁)的会员的信息(来自表Customer),列出会员号、姓名和年龄,查询结果按年龄降序排序存入文本文件cut_ab.txt中,SQL命令存入命令文件cmd_ab.prg。

VFP命令大全

VFP命令、函数及程序语句大全(一) 学过VFP(Microsoft Visual FoxPro)的朋友都知道它是微软公司开发的数据库管理系统。它经历了从dBASE、FoxBASE、FoxPro直到VFP的发展过程。本文便以VFP 6.0为例介绍它的命令、函数及程序语句,为学习VFP的朋友提供必要的学习参考,也为已经精通VFP的朋友提供复习的好机会。 一主要命令: 1、CREATE 作用:建立一个新的表。 格式:CREATE [<文件>|?](注意,命令字符可取前面四个字符,后面可省略不写,即CREA,下同;中括号表示其中的参数是可选的;|管道符号表示两个参数只能选择一个,不能同时选择,下同。)说明:文件指建立以.dbf为扩展名的VFP数据库文件,在命令后面加上一个问号表示系统会弹出对话框,要求用户输入想要建立的表名。在命令中不加文件名或问号系统也会弹出对话框,要求用户输入想要建立的表名。 2、MODIFY STRUCTURE 作用:显示表文件结构,并允许修改此表的结构。 格式:MODIFY STRUCTURE 说明:只有在用USE命令打开表文件以后,才能显示或修改表文件的结构。 3、APPEND 作用:在当前表的尾部(无论表中有无记录)追加记录(在当前表指当前正使用的表)。 格式:APPEND [BLANK] 说明:在APPEND命令后面加上BLANK参数表示在当前表的尾部添加一条空白记录。无BLANK参数时,表示在当前表的尾部添加一条记录并要求用户输入相应的字段内容。 4、INSERT 作用:在表文件中间插入一个新记录。 格式:INSERT [BEFORE] [BLANK] 说明:INSERT 在当前记录后插入一记录; INSERT BEFORE 在当前记录前插入一记录; INSERT BEFORE BLANK 在当前记录前插入一空记录。 5、BROWSE 作用:主要用于打开浏览窗口,查阅表文件并同时进行修改。 格式:BROWSE 6、USE 作用:打开和关闭表文件。 格式:USE [<文件名>] USE 说明:前一个命令用来打开<文件名>指定的表文件,该表如有备注型字段,则同时打开相应的备注文件(.fpt文件);后一个命令关闭当前打开的表文件。 7、LIST和DISPLAY 作用:显示表(.dbf)的内容、结构或状态。 格式:LIST|DISPLAY [OFF] [<范围>] [FIELDS] <表达式表> [WHILE <条件>] [FOR <条件>] [TO PRINT|TO FILE <文件>] LIST|DISPLAY STRUCTURE TO PRINT|TO FILE <文件>] LIST|DISPLAY STATUS [TO PRINT|TO FILE <文件>] 说明:命令带OFF参数表示不显示记录号,范围指定对哪些记录进行操作,范围包括:RECORD n 第几号记录、NEXT n 当前记录开始的几个记录、REST 自当前记录开始至文件末尾的所有记录、ALL 所有的记录。不选范围则隐含范围为ALL;FIELDS后跟字段名,字段名与字段名之间用逗号分隔。WHILE后跟条件,FOR后面也跟条件,区别是,WHILE后的条件如果满足,便停止查找;FOR后的条件查找所有满足条件的记录。TO PRINT和TO FILE <文件>分别表示将显示结果在打印机上打印出来和将显示结果输出到

VFP2011春上机试题

上机部分 一、项目、数据库和表操作(12分) 练习1 打开T盘根目录下的项目文件JXGL,在该项目文件中已有一数据库JXSJ。 1.在JXSJ (1 (2)设置RQ字段的默认值:当前系统日期; (3)设置单位字段的显示类:选项按钮组; (4)设置表的更新触发器:日期字段的值等于当前系统日期时可以更新记录; (5)创建普通索引:索引名为abcd,要求按日期排序,日期相同时按单价排序;2.在AB 3 4.KC表已存在主索引KCDM,索引表达式为KCDM,CJ表已存在普通索引KCDM,索引表达式为KCDM,以KC表为主表、CJ表为子表并按KCDM建立永久关系,并设置两表之间的参照完整性:删除级联、插入限制。 练习2 打开T盘根目录下的项目文件JXGL,在该项目文件中已有一数据库JXSJ。 1.在JXSJ数据库中按如下表格所示的结构创建AB表,并表格中的要求设置相关属性。 (1 (2)设置片名字段的格式:删除字段值的前导空格; (3)设置时长字段的有效性规则:大于或等于30; (4)设置语种字段的显示类:列表框; (5)创建普通索引:索引名为abcd,要求按语种排序,语种相同时按时长排序;2.在AB表中输入如下记录:

3.将自由表 4.KC表已存在主索引KCDM,索引表达式为KCDM;CJ表已存在普通索引KCDM,索引表达式为KCDM,以KC表为主表,CJ表为子表并按KCDM建立永久关系,并设置两表之间的参照完整性:更新级联、删除级联、插入限制。 练习3 练习4 练习5 练习6 练习7

在TEST项目中已经存在查询chaxun 练习1 已知自由表图书表(TSB)含有分类号(flh,C)、册数(cs,N)、价格(jg,N)等字段。按如下要求修改JXGL项目中的查询CHAXUN: 基于TSB表查询图书类别、藏书册数等信息。要求:查询输出字段为图书类别、藏书册数和平均单价;查询结果按藏书册数降序排序,相同时按平均单价升序排序;输出去向为文本文件TEMP。 注:图书类别为flh中”.”前的内容(可用LEFT(…,AT(“.”,…))形式的表达式求得),藏书册数为同一图书类别册数之和。 练习2 已知课程表(KC)含有课程代码(kcdm,C)、学分(xf,N)和课程名称(kcmc,C)等字段;成绩表(CJ)含有成绩(cj,N)、课程代码(kcdm,C)和备注(bz,M),成绩等级信息存放在备注字段的前7个字节中。按如下要求修改JXGL项目中的查询CHAXUN: 基于KC表和CJ表查询每门课成绩优秀和不及格的学生信息。要求:查询输出字段为kcmc、xh、学分、成绩等级、补考日期;查询结果按课程名称排序,课程名称相同时按成绩等级排序;仅输出成绩等级为“A优秀”或“F不及格”的记录。 注:当cj.cj>=60时,学分为xf字段的值,否则为0;当cj.cj<60时,补考日期的值为“2010.09.06”,否则为10个字节的空字符串。 练习3 练习4 练习5 练习6 练习7

VFP常用的操作命令总结

VFP常用的操作命令总结 <范围>子句 4种情况:ALL 操作对象为表中全部数据。 NEXT 操作包括当前记录在内的以下n条记录。 RECORD 只操作第n个数据。 REST 操作从当前到结尾的记录。 ①显示表中记录LIST、DISPLAY USE F:\VFP\st.dbf (路径根据不同情况有不同值) LIST [<范围>] [FIELDS] <字段名列表> [FOR<条件>] [OFF] LIST 学号,姓名, 入学成绩FOR 性别.and. 入学成绩>=480 DISPLAY FOR 出生时间] <字段名1> WITH <表达式1>[ ,<字段名2> WITH <表达式2>] [ FOR <条件>] REPLACE 入学成绩WITH 入学成绩+10 FOR 所在系="计算机" REPLACE ALL 总分WITH 语文+数学+英语 REPLACE 补助WITH 补助*1.5 ,分数WITH 分数+10 FOR 性别='男' .AND. 专业='物探' (如果没有ALL或FOR,只更替当前记录)。

③删除记录DELETE DELETE [<范围>] [FOR <条件>] GO 2 DELETE (逻辑删除第2条记录) DELETE ALL (逻辑删除全部记录) DELETE FOR 所在系=”中文”.and. .not. 性别 DELETE FOR 入学成绩<=470 恢复记录:RECALL RECALL [<范围>] [FOR <条件>] RECALL (只恢复当前一条记录)。 RECALL ALL (恢复所有打上删除标记的记录)。 物理删除命令:PACK、ZAP PACK (物理删除所有打上删除标记的记录,一旦执行,无法用RECALL 恢复)。 ZAP =DELETE ALL+PACK (等价于DELETE ALL 加上PACK,物理删除表中所有记录,只保留表结构,结果为一空表)。 ④插入新记录(用REPLACE命令填充一个新数据)看懂即可 APPEND BLANK (书上第26页) REPLACE 学号WITH “2006200”,姓名WITH “丁一”,性别WITH .T. ,出生时间WITH CTOD(“07/19/87”), 入学成绩WITH 508,所在系WITH “计算机”,系负责人WITH “程家吉” ⑤数据查询LOCATE LOCATE [<范围>] [FOR <条件>] 定位到范围中满足FOR条件的第1条记录。 LOCATE FOR YEAR(出生时间)=1986 (其中,出生日期为日期类型, 如果为字符串类型,可用RIGHT(出生日期,2)= "86")

vfp上机实训基本操作题

基本操作题 1(1)创建一个新的项目“customer_management”。 (2)在新建立的项目“customer_management”中创建数据库“order_management”。 (3)在数据库“order_management”中建立表“order_list”,表名称分别为:“客户型”、“订单号”、“订购日期”和“总金额”;类型分别为:“字符型(6)”、“字符型(6)”、“日期型”和“浮动型”。 (4)为“order list”表创建一个主索引,索引名和索引表达式均是“订单号”。 2在考生文件夹下的“职员管理”数据库中完成下列基本操作: (1)为“员工信息”表增加一个字段,字段名为“EMAIL”,类型为“字符型”,宽度为“20”。 (2)设置“员工信息”表中“性别”字段的有效性规则,性别取“男”或“女”,默认值为“女”。 (3)在“员工信息”表中,将所有记录的“EMAIL”字段值用“部门编号”的字段值加上“职工编号”的字段值再加上“@https://www.doczj.com/doc/9814626847.html,”进行替换。 (4)通过“部门编号”字段建立“员工信息”表和“部门”表间的永久联系。 3(1)建立项目文件,文件名为“xm”。 (2)在项目中建立数据库,文件名为“DB1”。 (3)把表单“bd1”添加到项目“xm”中。 (4)修改表单“bd1”,为其添加一个“关闭”按钮。 4(1)将数据库“school”添加到项目文件“xm”中。 (2)将自由表“course”添加到数据库“school”中。 (3)建立数据库表“course"与表“score”之间的关联(两表的索引已经建立)。 (4)为(3)题中的两个表之间的联系设置完整性约束,要求:“更新”规则为“忽略”,“删除”规则和“插入”规则均为“限制”。 5(1)将自由表“股票代码”添加到“投资管理”数据库中。 (2)为表“股票代码”建立一个主索引(升序),索引名和索引表达式均为“股票代码”。 (3)为表“股票代码”设定有效性规则:股票代码第一位必须以0或6开头,错误提示信息是“股票代码必须以0或6开头”。 (4)打开表单文件“bd1”,请修改“登录”命令按钮的标题为关闭。

相关主题
文本预览
相关文档 最新文档