第二章 Visual FoxPro数据运算
![第二章 Visual FoxPro数据运算](https://img.360docs.net/img58/02nooj36nbgf1mky4dhm-81.webp)
![第二章 Visual FoxPro数据运算](https://img.360docs.net/img58/02nooj36nbgf1mky4dhm-92.webp)
第二章Visual FoxPro数据运算
一、选择题
1、依次执行Visual FoxPro=″ABC″和ABC= Visual FoxPro命令后,再执行?Visual
FoxPro+ABC命令的结果是。
A)ABCABC B)Visual FoxProABC
C)FoxPro Visual FoxPro D)ABC Visual FoxPro
2、(2001-9-20)-(2001-9-10)+4^2的结果是。
A)26 B)6 C)18 D) -2
3、下列不能作为VFP中变量名。
A)ABCDEFG B)P000000 C)89TWDDFF D)xyz
4、下列不能作为VFP的表达式。
A)赋值表达式B)日期表达式C)算术表达式D)关系表达式
5、表达式2*3^2+2*8/4+3^2的值为。
A)64 B)31 C)49 D)22
6、函数INT(-3.415)的值是。
A)-3.1415 B)3.1415 C)-3 D)3
7、函数V AL(″16Year″)的值是。
A)16.0 B)16.00 C)16.000 D)16
8、函数INT(RAND( )*10 )是在范围内的整数。
A)(0,1) B)(1,10) C)(0,10) D)(1,9)
9、如果x是一个正实数,对x的第3位小数四舍五入的表达式为。
A)0.01*INT(x+0.005) B)0.01*INT(100*(x+0.005))
C)0.01*INT(100*(x+0.05)) D)0.01*INT(x+0.05)
10、数字式子sin250写成VFP表达式是。
A)SIN25 B)SIN(25) C)SIN(250) D)SIN(25*PI()/180)
11、“x是小于100的非负数”用VFP表达式表示是。
A)0≤x<100 B)0<=x<100 C)0<=X and x<100 D)0=x OR x<100
12、下列符号中是VFP中的合法变量名。
A)AB7 B)7AB C)IF D)“AIB”
13、函数STR(-304.75)的值是。
A)-304 B)304 C)305 D) -305
14、连续执行以下命令之后,最后一条命令的输出结果是。
SET EXACT OFF
X="A "
?IIF("A"=X,X-"BCD",X+"BCD")
A)A B)BCD C)A BCD D)ABCD
15、在以下四组函数运算中,结果相同的是。
A)LEET("Visual FoxPro",6)与SUBSTR("Visual FoxPro",1,6)
B)YEAR(DA TE())与SUBSTR(DTOC(DATE),7,2)
C)V ARTYPE("36-5*4")与V ARTYPE(36-5*4)
D)假定A="this", B="is a string", A-B与A+B
16、下面关于Visual FoxPro数组的叙述中,错误的是。
A)用DIMENSION和DECLARE都可以定义数组
B)Visual FoxPro只支持一维数组和二维数组
C)一个数组中各个数组元素必须是同一种数据类型
D)新定义数组的各个数组元素初值为.F.
17、在下列函数中,函数值为数值的是。
A)A T(′人民′,′中华人民共和国′) B)CTOD(′01/01/96′)
C)BOF() D)SUBSTR(DTOC(DA TE()),7)
18、字符型(Character)数据用来存储用文字字符表示的数据,包括汉字、字母、数字、特殊符
号及空格等,最大长度可达。
A)254个字符B)256位 C)256个字节D)256KB
19、日期型数据是用来存储表示日期的数据,数据长度固定为8个字节。日期型数据的严格格式为。
A)dd-mm-yy B){^yyyy-mm-dd} C)dd-mm-yyyy D){^yyyy-dd-mm}
20、EOF()是测试函数,当正使用的数据表文件的记录指针已达到尾部,其函数值为。
A)0B)1C).T. D).F.
21、?A T(″大学″,″北京语言文化学院″)的答案是。
A)12B)13C)16D)0
22、STR(109.87,7,3)的值是。
A)109.87B)“109.87”C)109.870D)“109.870”
23、常量是指运算过程中其_____固定不变的量。
A)值B)内存地址C)所占内存大小D)以上都是
24、数值型常量不能用_____表示。
A)分数B)小数C)十进制D)科学计数法
25、字符型数据的最大长度是。
A)20B)254C)10D)65K
26、以下常量_____是合法的数值型常量。
A)123B)123+E456 C)“123.456” D)123*10
27、变量是指运算过程中其_____允许变化的量。
A)名称B)存储区域C)值D)所占内存大小
28、对于数组的定义,下列语句正确的是。
A)DIMENSION A(2,4,3)B)DIMENSION A(2)AB(2,3)
C)DIMENSION A(2 3)D)DIMENSION A(2),AB(2,3)
29、在逻辑运算中,依照_____运算原则。
A)NOT-OR-AND B)NOT-AND-OR
C)AND-OR-NOT D)OR-AND-NOT
30、已知D1和D2为日期型变量,下列4个表达式中非法的是。
A)D1-D2B)D1+D2 C)D1+28D)D1-36
31、下列4个表达式中,错误的是。
A)″姓名:″+姓名B)″性别:″+性别
C)″工资:″-工资D)姓名=″是工程师″
32、Visual FoxPro中,变量名的长度一般不能超过_____个字符。
A)10B)20 C)64D)任意个
33、函数INT(数值表达式)的功能是。
A)按四舍五入取数值表达式的整数部分
B)返回数值表达式值的整数部分
C)返回不大于数值表达式的最大整数
D)返回不小于数值表达式的最小整数
34、下列4个表达式中,运算结果为数值的是。
A)″9988″-″1255″B)200+800=1000
C)COTD([11/22/01])-20D)LEN(SPACE(3))-1
35、如果某数值字段宽度为8,小数为2,则其整数部分最大取值为。
A)999B)9999 C)99999D)999999
36、设有变量pi=3.1415926,执行命令?ROUND(pi,3)的显示结果为。
A)3.141 B)3.142 C)3.140D)3.000
37、Visual FoxPro的数据类型不包括。
A)实数型B)备注型C)逻辑型D)字符型
38、以下四条语句中,正确的是。
A)a=1,b=2B)a=b=1 C)store 1 to a,b D)store 1,2 to a,b
39、下列选项中不能够返回逻辑值的是。
A)EOF()B)BOF() C)RECN()D)FOUND()
40、设有一字段变量“姓名”,目前值为“赵磊”,又有一内存变量“姓名”,其值为“何菲”,
则命令:
″?姓名″的值应为。
A)赵磊B)何菲C)″赵磊″D)″何菲″
41、设X=″ABC″,Y=″ABCD″,则下列表达式中值为.T.的是。
A)X=Y B)X==Y C)X $ Y D)A T(X,Y)=0
42、逻辑型数据的取值不能是。
A).T.或.F.B).Y.或.N. C).T.或.F..Y.或.N.D)T或F
43、?ROUND(4.758,2)命令的输出结果是。
A)4.80 B)4.76C)4.750D)4.75
44、已知字符串M=″12 34″,N=″56 78″。则连接运算M-N的运算结果为。
A)″12345678″B)″12345678″
C)″12345678″D)″12345678″
45、设字段变量job是字符型的,pay是数值型的,能够表达“job是处长且pay不大于1000
元”的表达式是。
A)job=处长.AND.pay>1000 B)job=″处长″.AND.pay<1000
C)job=″处长″.AND.pay<=1000 D)job=处长.AND.pay<=1000
46、当前记录号可用函数_____求得。
A)EOF()B)BOF() C)RECC()D)RECN()
47、欲从字符串“电子计算机”中取出“计算机”,下面语句正确的是。
A)SUBSTR(“电子计算机”,3,3)B)SUBSTR(“电子计算机”,3,6)
C)SUBSTR(“电子计算机”,5,3)D)SUBSTR(“电子计算机”,5,6)
48、表达式V AL(SUBSTR(″本年第2期″,7,1))*LEN(″他!我″)结果是。
A)0B)2 C)8D)10
49、下列符号既不可以作为文件名又不可以作为变量名的是。
A)V abcdefg B)F a1234 C)Vabcdefg D)F-a1234
50、假定M=[22+28],则执行命令?M后屏幕将显示。
A)50B)22+28 C)[22+28]D)10
51、函数MOD(21,5)的值为。
A)4B)-4 C)1D)-1
52、设R=2,A=″3*R*R″,则&A的值应为。
A)0B)不存在C)12D)-12
53、执行下列命令后,当前打开的数据库文件名是。
Number=″3″
File=″file″+Number
USE &File
A)File3B)&File C)FileNumber D)File
54、函数UPPER(″FoxPro″)的值是。
A)FOXPRO B)FoxPro C)FoxPro D)FoxPro
55、下列选项中不是常量的是。
A)abc B)″abc″C)1.4E+2D){99/12/31}
56、变量名中不能包括。
A)字母B)数字C)汉字D)空格
57、计算表达式1-8>7.OR. ″a″+″b″$″123abc123″的值时,运算顺序是。
A)- >.OR.+ $ B)OR - + $ > C)-.OR.$ + > D)+ $ - >.OR.
58、CTOD(″98/09/28″)的值应该为。
A)1998年9月28日B)98/09/28 C){98/09/28}D)″98-09-28″
59、下列选项中得不到字符型数据的是。
A)DTOC(DA TE()) B)DTOC(DA TE(),1) C)STR(123,567) D)At(″1″,STR1321)
60、执行下列命令后,输出结果为。
STORE″666.49″TO X
?INT(&X+4)
A)666B)666.494 C)670D)670.49
61、有下列命令。
STORE 2 TO A
STORE A+2 TO A
STORE A=A+2 TO A
?TYPE(″A″)
顺序执行后,最后一条命令的显示结果为。
A)N B)C C)L D)U
62、执行如下命令序列:
YA=100
YA=200
YAB=300
N=″A″
M=″Y&N″
?&M
最后一条命令的显示值应为。
A)100B)200 C)300D)Y&N
63、用DIMENSION Q(2,3)命令定义的数组Q,再对各数组元素赋值:Q(1,1)=1, Q(1,2)=2,
Q(1,3)=3, Q(2,1)=4, Q(2,2)=5, Q(2,3)=6。然后执行命令?Q(2),则显示结果是。
A)4B)2 C).F.D)变量未定义的提示
64、关于FoxPro中的运算符优先级,下列选项中不正确的是。
A)算术运算符的优先级高于其他类型的运算符
B)字符串运算符“+”和“-”优先级相等
C)逻辑运算符的优先级高于关系运算符
D)所有关系运算符的优先级都相等
65、某数值型字段的宽度为6,小数位为2,则该字段所能存放的最小数值是。
A)0B)-999.99 C)-99.9D)-9999.99
66、设当前数据库文件中含有字段NAME,系统中有一内存变量的名称也为NAME,下面命令?
NAME的显示结果是。
A)内存变量NAME的值B)字段变量NAME的值
C)与该命令之前的状态有关D)错误信息
67、职工数据库中有D型字段“出生日期”,要计算职工的整数实足年龄,应当使用命令。
A)?DATE()-出生日期/365 B)?(DATE()-出生日期)/365
C)?INT((DATE()-出生日期)/365) D)?ROUND((DATE()-出生日期)/365
68、执行下列命令序列后,变量NDATE的显示值为。
STORE {^1999-08-06} to MDATE
NDA TE=MDATE+2
?NDA TE
STORE {99/08/06}TO MDA TE
NDA TE=MDATE+2
?NDATE
A)06/08/99 B)08/06/99 C)99-08-06 D)99-06-08
69、命令DIME array(5,5)执行后,array(3,3)的值为。
A)0B)1 C).T.D).F.
70、用DIMENSION P(2)定义了一个数组,接着执行命令?TYPE(″P(1)″),其结果是。
A)L B)N C)C D)U
71、顺序执行下列命令:
x=100
y=8
x=x+y
?x, x=x+y
最后一条命令的显示结果是。
A)100.F.B)100.E. C)108.T.D)108.F.
72、假定X为N型变量,Y为C型变量,则下列选项中符合FoxPro语法要求的表达式是。
A).NOT.X>=Y B)Y*2>10 C)X-001 D)STR(X)-Y
73、变量F没有定义,执行下列命令后,显示U的命令是。
A)?TYPE(F) B)?TYPE(.F.) C)?TYPE(″F″) D)?TYPE(″.F.″)
74、可以比较大小的数据类型包括。
A)数值型、字符型、日期型、逻辑型B)数值型、字符型、日期型
C)数值型、字符型D)数值型
75、职工数据库中有D型字段“出生日期”,要显示职工生日的月份和日期可以使用命令。
A)?姓名+Month(出生日期)+″月″+DAY(出生日期)+″日″
B)?姓名+STR(Month(出生日期))+″月″+DAY(出生日期)+″日″
C)?姓名+STR(Month(出生日期))+″月″+STR(DAY(出生日期))+″日″
D)?姓名+SUBSTR(出生日期,4,2)+SUBSTR(出生日期,7,2)
76、设X=123,Y=456,Z=″X+Y″,则表达式6+&Z的值式。
A)6+&Z B)6+X+Y C)585 D)错误提示
77、使用DECLARE命令定义数组后,数组元素在没有赋值之前的数据类型是。
A)无类型B)字符型C)数值型D)逻辑型
78、执行以下命令序列(设今天是2000年8月6日)
STORE DATE() TO MDATE
MDATE=MDATE-365
?YEAR(MDATE)
的显示结果为。
A)1999B)99 C)2000D)该语句序列中有错误
79、设变量A=″99/10/01″,则表达式MONTH((CTOD(A))和DAY((CTOD(A))的值分别为。
A)99和10B)99和1 C)10和1D)1和10
80、设一个数据库中有18条记录,当EOF()返回真值,则当前记录号应为。
A)18B)0 C)19D)1
81、有如下命令序列
STORE″456″TO X
STORE″123″+X TO Y
STORE TRIM(Y-″789″) TO Z
执行上述命令之后,Z的值为。
A)″123456789″B)″123456 789″ C)″123 456789″ D)″1234 56789″
82、下列字符型常量Hello,world!表示方法中错误的是。
A)[Hello, world!] B)‘Hello, world!’C) “Hello, world!”D){Hello, world!}
83、在以下四组命令中,每组有两个分别运算的函数,运算结果相同的是。
A)LEFT(″FoxPro″,3)与SUBSTR(″FoxPro″,1,3)
B)YEAR(DA TE())与SUBSTR(DTOC(DATE())7,2)
C)TYPE(″36-5*4″)与TYPE(36-5*4)
D)假定A=″This″, B=″is a string″时,A-B与A+B
84、设A=″abcd″+ space(5), B=″efgh″,则A-B的结果与下列选项的结果相同。
A)″abcd″+space(5)+″efgh″B)″abcd″+″efgh″
C)″abcd″+″efgh″+space(5) D)″abcd″+″efgh″+space(1)
85、假定字符串变量A=″123″,B=″234″,下列表达式正确的是。
A).NOT.(A=B).OR.B$(″13579″) B) A$(″ABC″).AND.(A<>B)
C) .NOT(A<>B) D) .NOT(A<=B)
86、关闭多区的表文件,并释放所有的内存变量,命令为。
A)CLEAR ALL或CLOSE B)CLEAR ALL或CLOSE ALL
C)CLEAR或CLOSE ALL D)CLEAR或CLOSE
87、命令Y=YEAR({12/15/99})执行后,内存变量Y的值是。
A)1999B)05 C)2099D)出错信息
88、下列各表达式中,结果总是逻辑型的是。
A)算术运算表达式B)字符运算表达式C)日期运算表达式D)关系运算表达式
89、用数据库管理系统对数据进行处理时,说法不正确的是。
A)暂时用到的一些中间变量称为内存变量B)字段仍然是变量
C)变量包括内存变量和字段变量两类D)字段不再是变量,而成为常量
90、内存变量一旦定义后,它的_____可以改变。
A)类型和值B)值C)类型D)宽度
91、以下四组表达式中结果是逻辑值.T.的是。
A)′this′$′this is a string′B)′this′$′THIS IS A STRING′
C)′this is a string′$′this′D)′this′>′this is a string′
92、下列逻辑运算,结果是假的是。
A)? ″ABCDE″==″ABCDE″B)NOT(ROUND(123,456,2)) C){95-05-01}+45>{96-06-26} D)″ABC″<″ABCDEF″ 93、下列中,测试库文件记录数的函数是。 A)RECNO()B)RECCOUNT() C)FOUND()D)EOF() 94、对内存变量中的叙述,不正确的是。 A)内存变量是独立于数据库的变量B)内存变量有N、C、L、D、S类型 C)内存变量用赋值语句定义D)内存变量的形式只有标量 95、逻辑判断式ROUND(123.456,0) A).F. B).T. C)T D) F 96、在Visual FoxPro数据管理系统中,下列数据为常量的是。 A)02/0399B)F C).n.D)BOTT 97、已知有两个数组A、B,下面语法错误的是。 A)DIMENSION A[2],B(2,3) B)DECLARE A[2,3] B[2] C)?A(2,1),B(2,1) D)STORE 12 TO A,B 98、在下列表达式中,结果肯定为真(.T.)的是。 A)″112″>″85″B)[李明]<=[李明] C){03/21/98}>{03/12/98} D)″男″$性别 99、假定X=3,执行命令?X=X+1后,其结果是。 A)4B)3 C).T.D).F. 100、假定X=2,Y=5,执行下列运算后,能够得到数值型结果的是。 A)?X=Y-3B)?Y-3=X C)X=Y D)X+3=Y 101、设当前数据库有10条记录(记录未进行任何索引),在下列三种情况下,当前记录号为1时;EOF()为真时;BOF()为真时,命令?RECN()的结果分别是______。 A)1,11,1 B)1,10,1 C)1,11,0 D)1,10,0 102、设X="ABC",Y="ABCD",则下列表达式中值为.T.的是______。 A)X=Y B)X==Y C)X$Y D)A T(X,Y)=0 103、在下面的Visual FoxPro表达式中,运算结果是逻辑真的是______。 A)EMPTY(.NULL.) B)LIKE('acd','ac?') C)AT('a','123abc') D)EMPTY(SPACE(2)) 104、设D=5>6,命令?V ARTYPE(D)的输出值是______。 A)L B)C C)N D)D 105、设有变量sr="2004年上半年全国计算机等级考试",能够显示"2004年上半年计算机等级考试"的命令是______。 A)?sr"全国" B)?SUBSTR(sr,1,8)+SUBSTR(sr,11,17) C)?STR(sr,1,12)+STR(sr,17,14) D)?SUBSTR(sr,1,12)+SUBSTR(sr,17,14) 106、在下列函数中,函数返回值为数值的是______。 A)BOF() B)CTOD('01/01/96') C)AT('人民','中华人民共和国') D)SUBSTR(DTOC(DATE()),7) 107、设X="ABC",Y="ABCD",则下列表达式中值为.T.的是______。 A)X=Y B)X==Y C)X$Y D)A T(X,Y)=0 108、设N=886,M=345,K='M+N',表达式1+&K的值是______。 A)1232 B)数据类型为匹配C)1+M+N D)346 109、函数EMPTY(O)和ISNULL(O)的返回值分别是。 A).T.和.T. B).F.和.T. C).T.和.F. D).F.和.F. 二、填空题 1、数组是按一定顺序排列的_____。 2、货币型数据是用来存储货币类型的数据,数据长度固定为8个字节,它的小数位数固定为 _____位,超过则四舍五入,整数位最大可达______位。 3、浮点型数据在功能上等价于数值型数据,在存储时采用浮点格式。它由______、______及字 母E组成。 4、系统日期为2001年12月31日,下列表达式的值是______。 V AL( SUBSTR( "1999",3)+RIGHT( STR(YEAR( DA TE( ))),2))+17 5、?TYPE(″10/25/01″)的输出值是______。 6、如果一个表达式中包含算术运算、关系运算、逻辑运算和函数时,则运算的优先次序是 ______、______、______、______。 7、字符型常量是用定界符括起来的字符串。字符型常量的定界符有半角______、______或______ 等三种。 8、内存变量的类型不是固定的,内存变量的类型取决于______的类型,即可以把不同类型的变 量值赋值给同一内存变量。 9、数值型数据最大宽度为______,浮点型数据最大宽度为______,逻辑型数据宽度固定为 ______,日期型数据长度固定为______,备注型数据宽度固定为______。 10、删除当前内存中的所有内存变量,应使用命令______,清除所有内存变量,并关闭所 有文件,将1号工作区设置为当前工作区,应使用命令______。 11、Visual FoxPro中变量名由汉字或字母开头,用字母、汉字、数字和下划线构成,变量 名的长度一般不能超过______个字符(数据库表中的字段变量达到128个字符)。 12、日期型数据是一种特殊的数值,Visual FoxPro系统中,日期时间运算符只有______和 ______两种。 13、数据类型测试函数TYPE的返回值有六种,分别是______,表示______;______,表 示______;______,表示______;______,表示______;______,表示______;______,表示______。 14、?A T(″+″,″a+b=c″),显示结果为______。 15、?LEN(TRIM(″国庆″+″假期□□″)),显示结果为______。 16、?CTOD(″99-01-01″)-365,显示结果为______。 17、备注型数据长度固定为______个字节,备注文件以______为扩展名。 18、1997年7月1日用日期型常量表示为______。 19、?YEAR({99-12-30}),显示结果为______。 20、MDY({99-12-30}),显示结果为______。 21、? MAX(10,20,30),显示结果为______。 22、FoxPro中的数组元素下标从______开始。 23、设变量a=1,c1=″事不过三″,c2=″三″, 1)表达式a<3.AND.c1 $ c2结果为______。2)表达式a<3.AND.c2 $ c1结果为______。 3)表达式a<3.OR.c1 $ c2的结果为______。4)表达式a<3.OR.c2 $ c1的结果为______。 24、下列命令执行后的结果是______。 STORE -100 TO X ?SIGN(X)*SQRT(ABS(X)) 25、x>1或x<0的FoxPro表达式是______。 26、?ROUND(123.456,2),显示结果为______。 27、?ROUND(123.456,-2),显示结果为______。 28、表达式″World″$″World Wide Web″的结果为______。 29、表达式″Win″=″Winword″的结果为______。 30、表达式″Winword″=″Win″的结果为______。 31、LEFT("123456789",LEN("数据库"))的计算结果是______。 32、在Visual FoxPro中用于计算检索的函数有COUNT、______、____、MAX和MIN。 33、FoxPro的字符型变量以字母______表示,数值型变量以字母______表示,浮点型变量以字 母______表示,通用型数据以字母______表示。 34、设X=36,Y=″石油″,Z=.T. (1)表达式YEAR(CTOD(″05/19/2002″))的值是______; (2)表达式″中国″-Y的值是______; (3)表达式SUBS(Y,3,2)的值是______;(4)表达式X>0.OR.Y=″ABC″的值是______; (5)表达式INT(X/100)的值是______;(6)表达式″开发″$Y的值是______; (7)表达式X>100.OR..NOT.Z的值是______;(8)表达式″中国″+Y的值是______; (9)表达式″油″$Y的值是______; (10)表达式STUFF(Y,3,2,″工学院″)的值是______; (11)表达式″a″>″A″的值是______;(12)表达式MOD(X,-5)的值是______; (13)表达式REPLICATE(″--″,X/6)的值是______; (14)表达式TYPE(′X+Y′)的值是______;(15)表达式TYPE(′Y′)的值是______。 35、若a=5,b=″a<10″,则?TYPE(b)输出结果为______,而?TYPE(″b″)输出结果为______。 36、执行下列表达式的结果是: (1)?TRIM(″国庆□□″+″假期″)(式子中□表示空格)______ (2)?LEN(TRIM(″国庆□□″+″假期″))______ (3)?TRIM(″国庆″+″假期□□″)______ 37、设变量n1=5,n2=10,n3=15,m1=20,m2=25,将所有以字母n开头的变量存入内存变量文件 myfile.mem的命令是______。 38、显示当前内存变量的命令为______。 39、1960年以前出生的教授的逻辑表达式是______。 40、年龄大于50岁或小于20岁的技术员的逻辑表达式是______。 41、顺序执行以下操作: A=123.456 B=STR(A+A,5) C=ASC(B) 内存变量A和C的类型分别为______、______,内存变量B的值是______。 42、?REPLICATE(″$″,6),显示结果为______。 43、定义一个两行三列的二维数组array,使用命令______,将数据库文件dbm所有字段的数据 传给数组array,应使用命令______。 44、{99-12-20}>{99-12-10}的结果为______。 45、表达式3+3>=6.OR. 3+3>5.AND.2+3=5的结果为______。 46、在FoxPro状态下,执行 MARK=″ABC″ @3,10 SAY MARK PICTURE ″!!!!!!!″ 执行结果是______。 47、一般高级语言中,内存变量是通过说明语句定义的;而在FoxPro中内存变量是通过______ 方式定义的,其类型是由______决定的。 48、字段变量与内存变量同名时,区分方法是______。 49、? LEN(″计算机″) 50、数组是一组______的集合,由一系列元素组成,每个数组元素可以通过数组名和相应的下 标来访问。 51、字段变量的类型和宽度等在定义______时就已经定义,字段变量的类型有______种。 52、数值型字段小数位数的取值范围是______。 53、表达式LEN(SPACE(6)-SPACE(5))的值是______。 54、执行下列命令后的输出结果是______。 StrABC=″开展全民健身运动,增强人民体质″ ?at(″健身″,StrABC)*LEN(StrABC) 55、表达式NOT(″A″>″B″AND 3*6<20 OR ″ART″>″ARS″)的值是______。 《Visual FoxPro6.0简明教程》教学指导书 一、教学目的和要求 本课程以Visual Foxpro 6.0 为基础,讲授数据库系统的基本概念和基本理论,使学生了解关系型数据库的基本概念和程序设计方法,能够独立编写VFP程序,并结合数据库的操作管理功能,实现信息管理与查询功能,为后续课程学习奠定基础。 通过本课程的学习,使学生掌握数据库的基本概念、操作、查询;掌握高级语言程序设计及可视化编程功能,掌握可视化编程技巧及技术。学完本课程后,学生应该能够独立编制小型数据库应用程序。 为了便于教师备课,掌握进度,我们给出该课程的教学指导书。但基于各学校的教学安排和情况有所不同,所以很难有统一要求,我们仅以每周3+2学时为例(3节上课,2节上机,按18周设计)写出教学要求。对于每周2+2学时的教学单位有些章节内容可以删略。 二、课程内容及其安排 (课程安排以教育部高职高专规划教材《Visual FoxPro6.0简明教程》为基础) 教学课程内容安排: 第一周 内容:第1章Visual FoxPro 6.0概述 教学目的: 要求学生掌握VFP6.0的功能,VFP6.0系统的软硬件环境,VFP6.0系统的安装及性能指标和VFP6.0文件组成。 教学重点与难点: 1.VFP6.0系统的启动 2. VFP6.0环境介绍 3.VFP6.0文件组成 作业: 1.VFP 6.0的主要特点是什么? 2.VFP 6.0主要使用哪两种菜单? 3.VFP 6.0的数据库文件和数据表文件的扩展名是什么? 第二周 内容:项目管理器 教学目的: 使学生学会项目管理器的建立和使用. 教学重点与难点: 1.项目管理器的建立和界面操作 2. 设计器与生成器的使用 3. 工作目录与搜索路径的建立 作业: 1.什么是项目管理器? 2.如何进入项目管理器 3.项目文件的扩展名是什么? 实验五 Visual Foxpro编程实践 一. 实验目的与要求 掌握利用Visual Foxpro编制开发自己的应用程序的实践知识,并学会在程序调试中自行发现问题和修改程序代码,最终完成应用程序的无错运行。 二. 相关知识 利用Visual Foxpro自行开发编制应用程序的步骤: 1.设置好系统的工作环境(尤其注意工作目录的默认设置)。 2.如果是初次进行,应当先建立一个项目,为该项目命名,激活项目管理器。如果是接着上次的工作进行,则打开上次工作的本项目,同样也激活项目管理器。 3.在项目管理器的“数据”“数据库”下面创建一个数据库,并命名(如已创建,则跳过本步骤)。 4.在项目管理器的“数据”“数据库”“表”下面进行数据表的创建或修改工作,并输入少量的正确数据以便将来的运行调试(如果已经创建了数据表,则跳过本步骤)。 5.在项目管理器的“文档”下面创建该应用程序所用到的所有表单,设计好各表单的界面并为表单里的控件填写程序代码.(注意为表单添加各自的数据环境,否则会出错!) 6.试运行各表单,发现问题后重新修改有问题的表单的代码,反复调试和修改直至最后能无错运行。 7.将应用程序打包发布或制作成安装文件。 三. 实验容与步骤 本次实验以一个简单的学生成绩管理系统为例。首先,对该系统作一个简单的介绍:该应用系统为完成学生信息和成绩的管理系统,主要有以下几个应用模块: (1)用户登录管理:系统具有管理员功能,只有取得管理员权限的人才能使用本系统。 (2)数据添加功能:对学生基本信息、教师基本信息、班级信息、课程信息、学生成 绩信息进行添加录入。 (3)数据查询功能:对上述信息的基本查询。 (4)数据修改功能:对上述信息可进行修改工作。 (5)统计操作:可分别按个人成绩、单科成绩统计出最高成绩、最低成绩和平均成绩 等。 (6)打印功能:对上述信息可进行打印。 实验步骤如下: 1.数据库设计: 首先设置好系统的运行环境和工作目录,然后建立项目,为项目命名为“学生成绩管理系统”,激活项目管理器,并在在项目管理器的“数据”“数据库”下面创建一个数据库,命名为“学生成绩管理”,在“数据库”的“表”下面创建以下各数据表: 字段名称类型宽度 用户名字符型10 密码字符型10 字段名称类型宽度 学号字符型8 字符型10 第一章数据库系统概述 数据库系统(DBS):指引入数据库技术的计算机系统 特点:数据结构化,数据共享性高,程序和数据具有较高 的独立性,为用户提供良好的接口,统一管理和控 制数据,系统灵活,易于扩充. 数据库(DB):是存储在计算机设备上.结构化的相关数据的集合,不仅描述事物数据的本身,也包括相关事物之间的联系. 数据库管理系统(DBMS):是数据库系统中对数据进行管理的软件系统,是数据库的核心. 功能:数据定义功能,数据操纵功能,数据库管理和控制功能. 数据库管理员(DBA)的主要工作:数据库设计,数据库维护,改 善系统性能,提高系统效率 数据库设计的根本目的:解决数据资源共享问题 数据库系统的体系结构 概念模式:简称模式,是数据库中全体数据的逻辑结构和特征的描述, 是面向全部用户的公 共数据视图 外模式:又称子模式或用户模式是用户与数据库的接口. 内模式:又称物理模式或存储模式,描述数据在存储介质上的安排和存储方式。一个数据库只有一个内模式. 数据模型:客观事物及联系—概念模型—数据模型. E-R模型:实体(矩形)属性(椭圆)联系(菱形) 在数据库设计阶段,将E-R图转化为关系数据模型的过程属于逻辑设计阶段。 两个实体间的联系:一对一的联系如班级与班长 一对多的联系如班级与学生 多对多的联系如学生与课程 数据模型有:层次模型,网状模型,关系模型:是用二维表结构描述,一张二维表就是一个关系 关系数据库 关系:一个关系就是一张二维表. 元组(记录):表中的一行. 属性(字段):表中的一列. 域:属性的取值范围. 关键字:一张表中的一列或若干列能够把不同的记录区分开来. 超关键字:二维表中能唯一确定记录的一列或几列,但它包含的字段可能是多余的. 候选关键字:如果超关键字去掉任何一个字段后都不能唯一确定,是候选关键字. 主关键字:外部关键字P10 关系的特点:(1)关系必须规范化.即表中不能再包含表. (2)同一关系中不允许出现相同的属性名. (3)关系中任意两个元组不能完全相同. 学科实验报告 班级2010级金融姓名陈光伟学科管理系统中计算机应用实验名称数据库的创建与表间关系的各种操作 实验工具Visual foxpro 6.0 实验目的1、掌握数据库结构的创建方式 2、表间的关联关系 实验步骤一、建立数据库。 1、在项目管理器中建立数据库。首先选择数据库,然后单击“新建”建立数据库,出现的界面提示用户输入数据库的名称,按要求输入后单击“保存”则完成数据库的建立,并打开i“数据库设计器”。 2、从“新建”对话框建立数据库。单击工具栏上的“新建”按钮或者选择菜单“文件——新建”打开“新建”对话框,首先在“文件类型”组框中选择“数据库”,然后单击“新建文件”建立数据库,后面的操作和步骤与1相同。 3、用命令交互建立数据库。命令是create database【databasename ▏?】 二、表间关系的各种操作。 1、创建索引文件。可以再创建数据表时建立其结构复合索引文件,但是也可以先建立好数据表,以后再创建或修改索引文件。 2、索引的操作。A、打开与关闭。要使用索引,必须先要打开索引。一旦数据表文件关闭所有相应的索引文件也就自动关闭了。B、确定主控索引。可以使用命令确定当前主控索引。命令格式1:set order to 【tag】<索引标识>【ascending| desceding】命令格式2:use<表文件名>order【tag】<索引标识>【ascending | esceding】C、删除索引标识。要删除结构复合索引文件中的索引标识,应当打开数据表文件,并打开其表设计器对话框。在“索引”页面中选定要删除的索引标识后,单击“删除”按钮删除。 3、创建关联。在创建数据表之间的关联时,把当前数据表叫做父表,而把要关联的表叫做子表。必须保证两个要建立关系的数据表中存在能够建立联系的同类字段;同时要求每个数据表事先分别以该字段建立了索引。A、建立表间的一对一的关系。在“数据库设计器”窗口中选择M表中的字段,并按住左键拖到关联表H中对应字段上,放开鼠标左键。这是可以看到在两个表之间的相关字段上产生了一条连线,表明两个表之间已经建立了“一对一”关系。B、建立表间一对多的关系。将M表的名称字段MC设定为主索引,或者候选索引;H表中的JG字段已经设置成普通索引。在“数据库设计器”窗口中将MC字段拖到关联表中对应字段JG上,放开鼠标左键。这时可以看到在两个表之间的相关字段上产生了一条显然与“一对一”关联不同形式的连线,表明两个表之间已经建立了“一对多”关系。 4、调整或删除关联。A、删除关联。在数据库设计器对话框窗口中,首先必须用鼠标左键单击关联线,该连线变粗了说明它已被选中。如果要删除可敲【del】。也可以单击鼠标右键在弹出对话框窗口中单击“删除关联”选项。B、编辑关联。在数据库设计器对话框窗口中,首先必须用鼠标左键单击关联线,该连线变粗了说明已被选中。在主菜单“数据库”选项的下拉菜单中的“编辑关系”选项,也可以单击鼠标右键在弹出对话框窗口中单击“编辑关系”选项。 5、设置数据表之间的参照完整性。在对数据库表建立关联关系后,就可以设置两个相关数据表之间操作的有效性原则。这些规则可以控制相关表中的记录的插入、删除或修改。 VFP考试试题及答案 一.单选题 1.关系模型的完整性不包括(A)。 A.迭代完整性 B.实体完整性 C.参照完整性 D.用户定义完整性 2.VisualFoxPro数据中的每一行称为(C)。 A.串标 B.行号 C.记录 D.编数 3.关系数据模型中的关系指的是(D)。 A.表行 B.表列 C.总和 D.二维表 4.常用的数据模型中有(C)。 A.比较模型 B.曲面模型 C.关系模型 D.对称模型 5.常用的数据模型中包括(A)。 A.层次模型 B.线性模型 C.双轨模型 D.瀑布模型 6.(A)是包含表中的一个或一组字段按一定顺序排列的数据列表。 A.索引 B.合并 C.列序 D.标号 7.数据库系统的三级模式中包括(B)。 A.循环模式 B.模式 C.高级模式 D.流行模式 8.常用的数据模型里有(B)。 A.回旋模型 B.网状模型 C.棱状模型 D.交叉模型 9.VisualFoxPro的表中每一列称作(A)。 A.字段 B.列标 C.名称 D.线型 10.数据库系统不包括(D)。 A.操作系统 B.数据表 C.数据库 D.计划书 11.数据模型描述的是(C)。 A.大小 B.颜色 C.事物间联系 D.特征 12.关系二维表中垂直方向的列称作(C)。 A.列名 B.特征 C.属性 D.行标 13.数据库系统三级模式中包括(A)。 A.外模式 B.层叠模式 C.交叉模式 D.圆环模式 14.数据库是指(A)的数据集合。 A.相关的 B.无序的 C.混合的 D.循环的 15.关系二维表中水平方向的行称作(A)。 A.元组 B.行标 C.数值 D.列值 16.数据库系统中不包括(B)。 A.数据库 B.空调 C.管理员 D.数据库管理系统 17.数据库系统的特点不包括(D)。 A.数据共享 B.减少数据冗余 C.避免不一致 D.数据交叉 18.数据库管理系统的英文缩写是(B)。 A.DA B.DBMS C.MANG D.GUANLI 19.数据库系统的组成中不包括(A)。 A.说明书 B.数据库管理系统 C.电脑主机 D.数据 20.关系二维表中列的取值围称作(A)。 A.域 B.值围 C.数据 D.区间 21.数据库的英文缩写是(C)。 A.SJK B.ABC C.DB D.OBJ 22.符合数据库特点的是(A)。 A.存储在计算机部 B.无序的 C.部无关的 D.用户独享 23.以下选项属于数值类数据的是(B)。 A.一二三 B.123 C.2012/2/1 D.ABC 24.关系R(D1,D2)的目等于(B)。 A.1 B.2 C.3 D.4 25.关系代数中的专门的关系运算中不包括(A)。 A.套用 B.选择 C.投影 D.连接 26.关系运算的类别中包括(C)。 VF程序设计实验报告 图书馆管理系统 专业: 学号: 姓名: 指导教师: 2010年12月31日 目录 第一部分系统概述--------------------------------2第二部分系统功能模块设计------------------------2第三部分系统数据库及表设计----------------------2第四部分系统菜单设计----------------------------5第五部分系统界面设计----------------------------6第六部分系统相关程序代码-----------------------13第七部分实验报告小结---------------------------22第八部分参考资料-------------------------------22 一、系统概述 近年来,随着图书馆规模的不断扩大,图书数量相应的增加,有关图书的各种信息量也成倍增加,面对庞大的信息量,传统的人工管理户导致图书管理的混乱,人力与物力过多的浪费,图书管理费用的增加,从而使图书馆的负担过重,影响整个图书馆的运作和控制管理。因此,为了充分发挥了图书馆的功效,最大限度地为读者服务,必须制定一套合理、有效,规范和实用的图书馆管理系统,对图书资料进行集中统一的管理。 根据上述需要,我们建立本图书馆管理系统。 根据图书、读者和管理员三者之间的关系,本系统主要实现读者对图书的查询、个人信息的修改和管理员对读者、图书的管理。 本系统采用作为开发工具。 二、系统功能模块设计 本系统可以完成一般图书馆关于图书查询、借阅及书库管理的主 要功能。其中:图书查询模块可以查询所需要的图书;读者管理模块 中,读者可以查看自己的信息,对登陆密码进行修改,管理员可以对 Visual FoxPro的运算符与表达式 运算是对数据进行加工的过程,描述各种不同运算的符号称为运算符,而参与运算的数据称为操作数。表达式用来表示某个求值规则,它由运算符和配对的圆括号将常量、变量、函数、对象等操作数以合理的形式组合而成。 表达式可用来执行运算、操作字符或测试数据,每个表达式都产生唯一的值。表达式的类型由运算符的类型决定。在Visual FoxPro 6.0中有5类运算符和表达式: ?算术运算符和算术表达式 ?字符串运算符和字符串表达式 ?日期运算符和日期表达式 ?关系运算符和关系表达式 ?逻辑运算符和逻辑表达式 1.算术运算符与算术表达式 算术表达式也称数值型表达式,由算术运算符、数值型常量、变量、函数和圆括号组成,其运算结果为一数值。例如:50*2+(70—6)/8的运算结果为108.00。算术表达式的格式为: <数值1><算术运算符1><数值2>[<算术运算符2><数值3>…] (1)算术运算符 Visual FoxPro 6.0提供的算术运算符见下表。在这6个算术运算符中,除取负“-”是单目运算符外,其他均为双目运算符。它们运算的含义与数学中基本相同。 运算符名称说明 + 加同数学中的加法 - 减同数学中的减法 * 乘同数学中的乘法 / 除同数学中的除法 ^或**乘方同数学中的乘方,如4^3表示43 %求余12%5表示12除以5所得的余数2 ? ( ) →^、** →*、/ → %→ +、- (2)表达式的书写规则 算术表达式与数学中的表达式写法有所区别,在书写表达式时应当特别注意: ?每个符号占1格,所有符号都必须一个一个并排写在同 一横线上,不能在右上角或右下角写方次或下标。例如:23要写成2^3,Xl十X2要写成X1+X2。 ?原来在数学表达式中省略的内容必须重新写上。例如:2X要写成2*X。 ?所有括号都用小括号(),且括号必须配对。例如: 3[x+2(y+z)]必须写成3*(x+2*(y+z))。 ?要把数学表达式中的有些符号,改成Visual FoxPro 6.0 中可以表示的符号。例如:要把2πr改为2*pi*r。 2.字符串运算符与字符串表达式 一个字符串表达式由字符串常量、字符串变量、字符串函数和字符串运算符组成。它可以是一个简单的字符串常量,也可以是若干个字符串常量或字符串变量的组合。Visual FoxPro 6.0提供的字符运算符有两个(其运算级别相同),见下表。 运算符名称 说明 +连接将字符型数据进行连接 大全 数据库函数大全 VisualFoxPro数据库函数 ADATABASES()将所有打开数据库的名称和路径放到内存变量数组中 ADBOBJECTS()把当前数据库中的命名连接名、关系名、表名或sQL视图名放到一个内存变量数组中AFIELDS()把当前表的结构信息存放在一个数组中,并且返回表的字段数 ALIAS()返回当前表或指定工作区衰的别名 ASESSIONS()创建一个已存在的数据工作期ID数组 ATAGINFO()创建一个包含索引和键表达式的名字、数量和类型信息的数组 AUSED()将一个数据工作期中的表别名和工作区存入内存变量数组 BOF()确定当前记录指针是否在表头 CANDIDATE()判断索引是否为候选索引 CDX()根据指定的索引位置编号,返回打开的复合索引(.CDX)文件名称 CPDBP()返回一个打开表所使用的代码页 CREATEOFFLINE()由已存在的视图创建一个游离视图 CURSORGETPROP()返回VisualFoxPro表或临时表的当前属性设置 CURSORSETPROP()指定VisualFoxPro表或临时表的属性设置 CURSORTOXML()转换VisualFoxPro临时表为XML文本 CURVAL()从磁盘上的表或远程数据源中直接返回字段值 DBC()返回当前数据库的名称和路径 DBF()返回指定工作区中打开的表名,或根据表别名返回表名 DBSETPROP()给当前数据库或当前数据库中的字段、命名连接、表或视图设置一个属性 DELETED()返回一个表明当前记录是否标有删除标记的逻辑值 DESCENDING()是否用DESCENDING关键字创建了一个索引标识 DROPOFFLINE()放弃对游离视图的所有修改,并把游离视图放回到数据库中 EOF()确定记录指针位置是否超出当前表或指定表中的最后一个记录 FCOUNT()返回衰中的字段数目 FIELD()根据编号返回表中的字段名 FILTER()返回SETFILTER命令中指定的表筛选表达式 FLDLIST()对于SETmELDS命令指定的字段列表,返回其中的字段和计算结果字段表达式 FLOCK()尝试锁定当前表或指定表 FOR()返回一个己打开的单项索引文件或索引标识的索引筛选表达式 FOUND()如果CONTINUE、FIND、LOCATE或SEEK命令执行成功,函数的返回值为"真" FSIZE()以字节为单位,返回指定字段或文件的大小 GETFLDSTATE()返回一个数值,标明表或临时表中的字段是否已被编辑,或是否有追加的记录,或者记录的删除状态是否已更改 GETNEXTMODIFIED()返回一个记录号,对应于缓冲表或临时表中下一个被修改的记录 HEADER()返回当前或指定表文件的表头所占的字节数 IDXCOLLATE()返回索引或索引标识的排序序列 INDBC()如果指定的数据库对象在当前数据库中,则返回"真"(.T.) INDEXSEEK()在一个索引表中搜索第一次出现的某个记录 ISEXCLUSIVE()判断一个表或数据库是以独占方式打开的 ISFLOCKED()返回表的锁定状态 ISREADONLY()判断是否以只读方式打开表 ISRLOCKED()返回记录的锁定状态 KEY()返回索引标识或索引文件的索引关键字表达式 KEYMATCH()在索引标识或索引文件中搜索一个索引关键字 LOOKUP()在表中搜索字段值与指定表达式匹配的第一个记录 LUPDATE()返回一个表最近一次更新的日期 数据库与表的创建和使用 一、常用字段类型 1、字符型 2、数值型 3、日期型 4、逻辑型(T是,F否) 5、备注型 二、项目管理器 项目管理器是VFP中处理数据和对象的主要工具。项目管理器是系统的“控制中心”。一个项目是文件、数据、文档、对象的集合,项目文件以扩展名*.pjx保存。 创建一个项目文件的方法 1、CREATE PROJECT 项目文件名或? 2、文件—新建 3、工具栏“新建”按钮 二、数据库与表的概念 在VFP中有两种表:一种是自由表,它独立于任何数据库;一种是数据库表,它是数据库的一部分。 数据库和表是两个不同的概念。表是处理数据、建立关系数据库的应用程序的基础单元,它用于存储收集来的各种信息。而数据库是表的集合,它控制这些表协同工作,共同完成特定任务。 本节重点:数据库的创建和使用,数据库表的创建和使用,表的扩展属性,数据库表之间的关系的创建。 三、数据库的创建(*.dbc) 1、使用界面方式创建数据库:项目管理器、“新建”按钮 2、使用命令方式创建数据库 CREATE DATABASE 数据库文件名或? 四、打开数据库 OPEN DATABASE 数据库名或? 五、设置当前数据库 SET DATABASE TO 数据库名 六、修改数据库 MODIFY DATABASE 数据库文件名或? 七、关闭数据库 CLOSE DATABASE &&关闭当前数据库 CLOSE DATABASE ALL &&关闭所有数据库 八、删除数据库 DELETE DATABASE 数据库文件名或? 数据库表的创建和使用(*.dbf) 在VFP中,每个数据表可以有两种存在状态:自由表(即没有和任何数据库关联的*.dbf文件)或数据库表(即与数据库关联的*.dbf 文件)。属于某一数据库的表称为“数据库表”;不属于任何数据库而独立存在的表称为自由表。数据库表和自由表可以相互转换。 一、数据库表的创建 第一章 1.试说明数据与信息的区别和联系。 数据是人们用于记录事物情况的物理符号。信息是数据中所包含的意义。数据与信息既有区别,又有联系。数据是表示信息的,但并非任何数据都能表示信息,信息只是加工处理后的数据,是数据所表达的内容。另一方面信息不随表示它的数据形式而改变,它是反映客观现实世界的知识,而数据则具有任意性,用不同的数据形式可以表示同样的信息,信息只是加工处理后的数据,是数据所表达的内容。 2.什么是数据库、数据库管理系统和数据库系统? 数据库是在数据库管理系统的集中控制之下,按一定的组织方式存储起来的、相互关联的数据集合。 数据库管理系统(Database Management System,DBMS)是对数据进行统一的控制和管理,从而可以有效地减少数据冗余,实现数据共享,解决数据独立性问题,并提供统一的安全性、完整性和并发控制功能的系统软件。 数据库系统是把有关计算机硬件、软件、数据和人员组合起来为用户提供信息服务的 系统。 3.简述数据库的三级模式结构。 为了有效地组织、管理数据,提高数据库的逻辑独立性和物理独立性,人们为数据库设 计了一个严谨的体系结构,数据库领域公认的标准结构是三级模式结构,它包括外模式、模 式和内模式。 模式又称概念模式或逻辑模式,对应于概念级。它是由数据库设计者综合所有用户的数 据,按照统一的观点构造的全局逻辑结构,是对数据库中全部数据的逻辑结构和特征的总体描述,是所有用户的公共数据视图(全局视图)。外模式又称子模式,对应于用户级。它是某个或某几个用户所看到的数据库的数据视图,是与某一应用有关的数据的逻辑表示。内模式又称存储模式,对应于物理级。它是数据库中全体数据的内部表示或底层描述。 4.数据库系统的特点是什么? 特点是数据共享,减少数据冗余,具有较高的数据独立性,增强了数据安全性和完整性保护。 5.实体之间的联系有哪几种?分别举例说明。 VisualFoxPro磁盘_目录_文件函数 ADIR()将文件信息存放到数组中,然后返回文件个数。 CURDIR()返回当前目录或文件夹。 DEFAULTEXT()如果一个文件没有扩展名,则返回一个带新扩展名的文件名。DIRECTORY()若在磁盘上存在指定的目录,返回真(.T.)。 DISPLAYPA TH()为显示而截去长路径名到指定长度。 DRIVETYPE()返回指定驱动器的类型。 FDATE()返回文件最近一次修改的日期或日期时间。 FILE()如果在磁盘上找到指定的文件,则返回“真”(.T.)。 FILETOSTR()将一个文件的内容返回为一个字符串。 FORCEEXT()返回一个字符串,使用新的扩展名替换旧的扩展名FORCEPATH()返回一个文件名,使用新路径名代替旧文件名 FTIME()返回最近一次修改文件的时间。 FULLPATH()返回指定文件的路径或相对于另一文件的路径。 GETDIR()显示“选择目录”对话框,从中可以选择目录或文件夹。 GETFILE()显示“打开”对话框,并返回选定文件的名称。 JUSTDRIVE()从完整路径中返回驱动器的字母。 JUSTEXT()从完整路径中返回三字母的扩展名。 JUSTFNAME()返回完整路径和文件名中的文件名部分。 JUSTPATH()返回完整路径中的路径名。 JUSTTEM()返回完整路径和文件名中的根名(扩展名前的文件名)。 LOCFILE()在磁盘上定位文件并返回带有路径的文件名。 PUTFILE()激活“另存为…”对话框,并返回指定的文件名。 STRTOFILE()将一个字符串的内容写入一个文件。 SYS(3)返回一个合法文件名,可用来创建临时文件。 SYS(5)返回当前VisualFoxPro的默认驱动器。 SYS(7)返回当前格式文件的名称。 SYS(2000)返回一个按字母排序的与文件名和扩展名梗概匹配的第一个文件名。SYS(2003)返回默认驱动器或卷上的当前目录或文件夹的名称。 SYS(2014)返回指定文件相对于当前目录、指定目录或文件夹的最小化路径。SYS(2020)以字节数返回默认磁盘空间。 SYS(2022)以字节为单位返回指定磁盘簇(块)的大小。 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 <文件>分别表示将显示结果在打印机上打印出来和将显示结果输出到 1.不允许记录中出现重复索引值的索引是()。 A.主索引和普通索引 B.主索引,候选索引和普通索引 C.主索引和候选索引 D.普通索引,候选索引和唯一索引 2.结构化程序设计的三种基本逻辑结构是()。 A.选择结构,循环结构和嵌套结构 B.顺序结构,选择结构和循环结构 C.选择结构,循环结构和模块结构 D.循环结构,递归结构和循环结构 3.Visual FoxPro参照完整性规则不包括()。 A.更新规则 B.查询规则 C.删除规则 D.插入规则 4.测试数据库记录指针是否指向数据末尾所使用的函数是()。 A.FOUND( ) B.BOF() C.FILE() D.EOF() 5.命令SELECT 0的功能是()。 A.选择编号最小的未使用工作区 B.选择0号工作区 C.关闭当前工作区的表 D.选择当前工作区 6.以下函数结果为“共和国”的是()。 A.SUBSTR(“中华人民共和国”,5,3) B.SUBSTR(“中华人民共和国”9,6) C.SUBSTR(“中华人民共和国”9,3) D.SUBSTR(“中华人民共和国”5,6) 7.字符型数据的最大长度是( )。 A.20 B.254 C.10 D.255 8.如果内存变量和字段变量均有变量名"姓名",那么引用内存的正确方法是()。 A.M.姓名 B.M_>姓名 C.姓名 D.A和B都可以 9.一间宿舍可住多个学生,则实体宿舍和学生之间的联系是()。 A.一对一 B.多对多 C.多对一 D.一对多 10.当前数据库文件有10条记录,执行下列命令后的结果是()。 GO 5 APPEND BLANK ?RECNO() A.11 B.6 C.5 D.10 11.Visual Foxpro的ZAP命令可以删除当前数据库文件的()。 A.满足条件的记录 B.有删除标记的记录 C.结构 D.全部记录 12.命令:CREATE DATABASE ABC是用来()。 Visual FoxPro 经典教程:第九章:创建表单 经典教程:第九章: ? Visual Foxpro 6.0 中文版安装向导图 文示例介绍 最近在本站上下载Visual Foxpro 6.0的用户比较多,部分用户没有安装vfp6.0的经验,出现找不到安装程序,找不到产品ID号的问题,并提出建议要我们做一个安装教程,VFP6.0现在就要用于数据库设计,微软在10多年前就开发出来了。不过这个版本很经典,深受高校学生们的喜欢。首先准备VFP6.0:https://www.360docs.net/doc/5010342973.html,/k/vfp/。下面是解压,安装图文教程,希望对用户朋友们有帮助。 1、解压你所下载的Visual_Foxpro6.0_CN.rar,foxpro6.0 到你电脑上的任一目录下。 2、运行VisualFoxPro 6.0 安装向导如下图:点击下一步 3、最终用户许可协议->选择接受协议,下一步 4、产品号和用户ID,产品的ID号为,111-1111111或者000-0000000,姓名和公司名称可以自己随便填写。 5、选择公用安装文件夹,默认就行了,下一步。 6、Visual FoxPro 6.0 安装程序,选择“继续”。 7、提示你的电脑上的产品标识号,确定就可了。 8、等待安装->选择“典型安装”或者“自定义安装”(更改安装目录等),建议选择“典型安装” 9、安装成功,确定。 10、一点小状况,这个版本是没有带MSDN 6.0的,这一步是安装MSDN,不要选择“安装MSDN”。 11、通过Web 注册,这个也不需要了。不要选择“现在注册”,点击“完成”。终于大功告成了。 12、从开始菜单->程序里找到Visual FoxPro 6.0,如下图 思考题参考答案 第1章数据库系统概述 (1)数据库、数据库管理系统及数据库系统的概念分别是什么? 答:数据库是存储在计算机存储设备上的、结构化的相关数据集合;数据库管理系统是数据库系统中对数据进行管理的软件系统,是数据科系统的核心;数据库系统是指引入了数据库技术的计算机系统。 (2)在关系数据模型中,关系、元组、属性是什么概念? 答:一个关系就是一张二维表,由行和列构成;元组也称记录,是表中的一行;属性也称字段,是表中的一列。 (3)关系模型允许定义哪几类完整性约束? 答:实体完整性;参照完整性;用户定义完整性。 (4)关系的基本运算有哪几类? 答:传统的集合运算(并、交、差等);专门的关系运算(选择、投影、连接)。 (5)Visual FoxPro主要提供了哪几种设计工具? 答:略。 (6)如何设置当前工作目录? 答:界面方式:选择“工具|选项”菜单命令,打开“选项”对话框,在“文件位置”选项卡中选中“默认目录”列表项,单击“修改”命令按钮,打开“更改文件位置”对话框,选中“使用默认目录”复选框,单击“定位默认目录”文本框后的“…”命令按钮,选择一个目录后确定即可。 命令方式:SET DEFAULT TO <路径说明>。 (7)项目管理器的功能有哪些? 答:对项目中的表、数据库、查询、表单、报表、菜单等对象进行组织和管理;实现对项目中各个对象的创建、修改、删除等操作;将应用程序编译成可独立运行的可执行文件等。 第2章Visual FoxPro的数据与数据运算 (1)Visual FoxPro有哪几种常用的数据类型? 答:字符型、数值型、整型、浮点型、双精度型、货币型、日期型、日期时间型、逻辑型、备注型、通用型。 (2)字段变量与内存变量有何区别? 答:字段变量是数据表中的一个字段,变量名即字段名,针对不同的记录,同一字段可以有不同的字段值;内存变量是用户在程序中定义的,当程序运行时,在内存中临时创建内存变量,用于存放程序运行的中间结果和最终结果。 (3)什么是函数?如何调用函数? 答:函数是一段预先编写好的程序代码,用于实现某个特定功能,每个函数有一个函数名,可以接收若干个参数,返回一个确定值。 函数的一般调用格式为:函数名([参数列表])。 (4)什么是表达式?常见的表达式类型有哪几种? 答:表达式是把常量、变量、函数和字段名等用运算符连接起来的式子。常见的表达式类型有:算术表达式、字符表达式、日期和时间表达式、关系表达式、逻辑表达式。 第3章数据表的建立和使用 (1)Visual FoxPro中的表分为哪两类?它们有什么不同? Visual FoxPro数据库文件及记录命令 数据库文件及记录命令 ADDTABLE 在当前数据库中添加一个自由表 APPEND 在表的末尾添加一个或多个新记录 APPEND FROM ARRAY 由数组添加记录到表中 APPEND FROM 从一个文件中读入记录,追加到当前表的尾部 APPEND GENERAL 从文件中导入OLE对象并将其放入通用字段中 APPEND MEMO 将文本文件的内容复制到备注字段中 APPEND PROCEDURES 将文本文件中的存储过程追加到当前数据库中 AVERAGE 计算数值表达式或字段的算术平均值 BLANK 清除当前记录中所有字段的数据 BROWSE 打开浏览窗口,显示当前或选定表的记录 CALCULATE 对表中的字段或包含字段的表达式进行财务和统计操作 CHANGE 显示要编辑的字段 CLOSE 关闭各种类型的文件 CLOSE MEMO 关闭一个或多个备注编辑窗口 COMPILE DATABASE 编译数据库中的存储过程 CONTINUE 继续执行先前的LOCATE命令 COPY MEMO 复制当前记录中的指定备注字段的内容到文本文件 COPY PROCEDURES 将当前数据库中’的存储过程复制到文本文件 COPY STRUCTURE 用当前选择的表结构创建一个新的空自由表 COPY STRUCTURE EXTENDED 创建新表,它的字段包含当前选定表的结构信息 COPY TO ARRAY 将当前选定表中的数据复制到数组 COPY TO 用当前选定表的内容创建新文件 COUNT 统计表中记录数目 CREATE 生成一个新的VisualFoxPro表 CREATE CONNECTION 创建一个命名连接并把它存储在当前数据库中 第四章数据库与表的基本操作 实验4-1 数据库及表的操作 (一)实验目的 1.掌握创建数据库的基本操作方法。 2.熟练掌握创建表结构和输入记录的操作方法。 3.熟练掌握修改表结构、浏览和修改表记录数据的操作。 4.熟练掌握建立索引的操作。 5.掌握创建表间联系的操作。 (二)实验内容及步骤 1.创建数据库 【实例4-1】在实验2-1所建立的“教学管理.pjx”项目中,创建一个“学生成绩.dbc”数据库。 操作步骤如下: (1)打开“教学管理.pjx”项目。 (2)在“项目管理器”窗口中,选择“数据库”,然后单击“新建”按钮,打开“新建数据库”对话框,单击其中的“新建数据库”按钮,打开“创建”对话框,如图4-1所示。 图4-1“创建”对话框 (3)在“保存在”文本框中,选择保存数据库的文件夹“程序VX”;在“数据库名”文本框中,输入数据库名称“学生成绩”。 (4)单击“保存”按钮,即在指定位置建立一个“学生成绩.dbc”数据库文件。 此时,在VFP主窗口中弹出一个“数据库设计器”窗口,同时还激活了“数据库设计器”工具栏,如图4-2所示。 图4-2“数据库设计器”窗口 2.创建数据表 【实例4-2】在“教学管理.pjx”项目中,创建学生表(Student.dbf)、成绩表(Grade.dbf)、课程表(Course.dbf)、授课表(Teach.dbf)和教师表(Teacher.dbf)。各个表的结构和数据记录如图4-3、图4-4、图4-5、图4-6、图4-7、图4-8、图4-9、图4-10、图4-11和图4-12所示。 图4-3学生表(Student.dbf)的结构 图4-4学生表(Student.dbf)的记录浏览窗口 4.1 VFP数据库 1. 数据库的基本组成 数据库由一个以上相互关联的数据表组成,可以包含一个或多个表、视图、到远程数据源的连接和存储过程。 视图(view): 一个保存在数据库中的、由引用一个或多个表、或其他视图的相关数据组成的虚拟表,可以是本地的、远程的或带参数的。 存储过程(stored procedure): 是保存在数据库中的一个过程。该过程能包含一个用户自定义函数中的任何命令和函数。 创建数据库时系统自动生成3个文件: 数据库文件: 扩展名为 .DBC 数据库备注文件: 扩展名为 .DCT 数据库索引文件: 扩展名为 .DCX 2. 数据库的设计过程 1)明确建立数据库的目的和使用方式 2)设计所需的数据表(包括表结构和表记录) 3)建立表之间的关系 4)改进设计 4.2 数据库的创建 1. 数据库的创建过程 数据库的创建过程中一般会涉及下面一些常用操作: 1)创建新表→用表设计器(设置字段属性和表属性) 2)添加表→用数据库设计器按钮或数据库菜单 3)创建视图→用视图向导、视图设计器 4)建立关系→用鼠标将父表的索引拖到子表的相关索引上 5)编辑关系→用数据库菜单或快捷菜单→参照完整性生成器6)移去关系→用快捷菜单或按delete键 7)修改表→用表设计器 8)删除表或视图→用数据库设计器按钮或数据库菜单 2. 数据库的新建、打开、关闭 (1)新建数据库: 从文件菜单中单击新建→在新建对话框中选择数据库并单击新文件→在创建对话框中给出库文件名和保存位置→在数据库设计器中建立所需的数据库。 或从命令窗口中输入命令:create database 数据库名 (2)打开数据库: 从文件菜单中单击打开→在打开对话框中给出库文件名和保存位置并确定之。 或从命令窗口中输入命令: open database 数据库名 (3)关闭数据库: 从命令窗口中输入命令: close database && 关闭当前数据库 或close all && 关闭所有被打开的数据库 注意:1) 关闭了数据库表不等于关闭了数据库,但关闭了数据库则其中的数据表被同时关闭; 2) 用鼠标关闭了数据库设计器窗口并不能代表关闭数据库。 3. 用数据库设计器设计数据库《VisualFoxPro6.0简明教程》教学指导书(精)
VisualFoxpro编程实例
visualfoxpro知识点
数据库的创建与表间关系的各种操作
VisualFoxPro考试试题及答案
visualfoxpro程序设计实验报告
visualfoxpro的运算符与表达式
VisualFoxPro数据库编程函数大全
数据库与表的创建和使用
VFP程序设计教程习题答案
VisualFoxPro常用函数分类表
Visual FoxPro 命令
《Visual Foxpro6.0数据库与程序设计》试题(附答案)
Visual FoxPro经典教程
第九章: 第九章:创建表单
利用表单, 可以让用户在熟悉的界面下查看数据或将数据输入数据库。 但表单提供的远不止 一个界面:它还提供丰富的对象集,这些对象能响应用户(或系统)事件,这样就能使用户 尽可能方便和直观地完成信息管理工作。
本章内容要点:
? ? ? ? ?
设计表单 创建新表单 在表单中添加对象 处理对象 管理表单
设计表单
Visual FoxPro 提供了一个功能强大的表单设计器,使得设计表单的工作变得又快又容易。 在表单设计器中可以处理下列内容:
? ? ? ? ?
表单中不同类型的对象。 与表单相关联的数据。 顶层表单或子表单。 能一起操作的多个表单。 基于自定义模板的表单。
表单和表单集是拥有自己的属性、 事件和方法程序的对象, 在表单设计器中可以设置这些属 性、事件和方法程序。表单集包括了一个或多个表单,可以将它们作为一个整体来操作。例 如,如果在表单集中有四个表单,可以在运行时用一个命令显示或隐藏它们。
创建新表单
在“表单设计器”中可以新建表单, 而且在设计时刻就能看见其中各对象显示在用户面前的外 观。
若要新建一个表单
?
请在“项目管理器”中选定“表单”,并选择“新建”按钮。 -或者 -
从“文件”菜单中选择“新建”命令,选定“表单”按钮并选择“新建文件”按钮。 -或者 -
?
使用 CREATE FORM 命令。
表单设计器带下列工具栏的:表单设计器、表单控件、布局和 表单设计器带下列工具栏的:表单设计器、表单控件、布局和调色板
有关“表单设计器”的详细内容,请参阅《用户指南》中的第八章“用表单管理数据”。有关 工具栏的详细内容,请在“帮助”中查找“工具栏”,并选择与所需信息有关的工具栏。
设置数据环境
每一表单或表单集都包括一个数据环境。 数据环境是一个对象, 它包含与表单相互作用的表 或视图, 以及表单所要求的表之间的关系。 可以在“数据环境设计器”中直观地设置数据环境, 并与表单一起保存。
在表单运行时数据环境可自动打开、关闭表和视图。而且,通过设置“属性”窗口中 ControlSource 属性设置框,在这个属性框中列出数据环境的所有字段,数据环境将帮助您 设置控件的 ControlSource 属性。 若要打开数据环境设计器 1. 从“显示”菜单中选择“数据环境”。 2. 从快捷方式菜单中选择“添加”。 3. 在“添加表或视图”对话框中选择一表或视图添加到数据环境中去。VFP6.0安装教程
新编VFP程序设计教程课后答案
Visual FoxPro数据库文件及记录命令
数据库及表的基本操作
VFP基础教程-数据库的创建和使用