VisualFoxPro程序设计教程习题答案第2版人民邮电出版社文档格式.docx
《VisualFoxPro程序设计教程习题答案第2版人民邮电出版社文档格式.docx》由会员分享,可在线阅读,更多相关《VisualFoxPro程序设计教程习题答案第2版人民邮电出版社文档格式.docx(28页珍藏版)》请在冰豆网上搜索。
B)从关系中选择若干个属性组成新的关系的操作
C)从关系中选择满足给定条件的属性的操作
D)A和B都对
12.如果一个学生可以选择多门课程,而且每门课程可以被多个学生选择,则学生和课程两个实体之间的关系属于(C)
A)一对一联系B)多对一联系
C)多对多联系D)一对多联系
13.在VisualFoxPro的项目管理器中不包括的选项卡是(D)
A)数据B)文档C)类D)表单
14.打开VisualFoxPro"
项目管理器"
的"
文档"
(Docs)选项卡,其中包含(D)
A)表单(Form)文件B)报表(Report)文件
C)标签D)以上三种文件
二、填空题
1.数据管理技术发展过程经过人工管理、文件系统和数据库系统三个阶段,其中数据独立性最高的阶段是数据库系统。
2.在关系数据库中,把数据表示成二维表,每一个二维表称为关系。
3.在关系数据库中,二维表的列称为属性,二维表的行称为元组。
4.在关系模型中,“关系中不允许出现相同元组”的约束是通过关键字实现的。
5.在VisualFoxPro中,项目文件的扩展名是pjx。
6.项目管理器的数据选项卡用于显示和管理数据库、自由表和查询等。
7.可以在项目管理器的代码选项卡下建立命令文件。
二、数据与数据运算
1.在下面的数据类型中默认值为.F.的是(C)
A)数值型B)字符型C)逻辑型D)日期型
2.VisualFoxPro内存变量的数据类型不包括(D)
A)字符型B)货币型C)数值型D)通用型
3.执行命令A=2008/5/1,B={^2008/5/1},C=”2008-5-1”之后,内存变量A,B,C的数据类型分别是(A)
A)N,D,CB)N,D,DC)D,D,CD)C,D,C
4.使用命令DECLAREaa(3,4)定义的数组,aa包含的数组元素(下标变量)的个数为(D)
A)3个B)4个C)7个D)12个
5.下面关于VisualFoxPro数组的叙述中,错误的是(C)
A)用DIMENSION和DECLARE都可以定义数组
B)VisualFoxPro只支持一维数组和二维数组
C)一个数组中各个数组元素必须是同一种数据类型
D)新定义数组的各个数组元素初值为.F.
6.下列表达式的输出结果为真的是(D)
A)’ABC’>
’ACB’B)DATE()+5<
DATE()
C)’AC’$’ABC’D)2*3^2>
2^3*2
7.设A1=10,A2=20,A3=”A1+A2”,表达式&
A3+5的结果是(C)
A)1025B)10205C)35D)205
8.在下面的VisualFoxPro表达式中,不正确的是(C)
A){^2008-05-0110:
10:
10AM}-10B){^2008-05-01}-DATE()
C){^2008-05-01}+DATE()D){^2008-05-01}+1000
9.下列函数中函数值为字符型的是(B)
A)DATE()B)TIME()C)YEAR()D)DATETIME()
10.连续执行以下命令之后,表达式的输出结果为真的是(A)
SETEXACTOFF
X="
湖南大学□"
(□表示空格)
A)X=”湖南”B)”湖南”=XC)”大学”=XD)”湖南大学”=X
11.有如下赋值语句,结果为“大家好”的表达式是(D)
a=“你好”
b=“大家”
A)b+LEFT(a,2)B)b+RIGHT(a,1)
C)b+SUBSTR(a,1,2)D)b+RIGHT(a,2)
12.表达式LEN(ALLT(SPACE(10)))的运算结果是(C)
A)NULLB)10C)0D)"
13.设X=10,语句?
VARTYPE("
X"
)的输出结果是(B)
A)NB)CC)10D)X
14.下面的表达式中,结果为逻辑假的是(B)
A)EMPTY(SPACE(5))B)ISNULL(0)
C)LIKE(‘abc?
’,’abcd’)D)BETWEEN(40,34,50)
15.下列表达式的结果为字符型的是(C)
A)OCCURS(‘A’,’ABCABC’)B)CTOD(‘01/01/08’)
C)DTOC(DATE())D)ROUND(123.45,1)
1.表示“2008年10月1日”的日期常量应改写为{^2008-10-1}。
2.LEFT(“123456789”,LEN(“数据库”))的计算结果是123456。
3.表达式STUFF("
GOODBOY"
5,3,'
'
GIRL"
)的运算结果是GOODGIRL。
4.表达式IIF(AT(‘FOX’,’VISUALFOX’)<
5,’VISUAL□’+’FOX’,’VISUAL□’-’FOX’))的运算结果是VISUALFOX。
5.表达式STR(VAL(‘123.4ABC5’),3)的计算结果是123。
三、数据库与数据表的设计
1.在VisualFoxPro中以下叙述错误的是D
A)关系也被称作数据表
B)数据库文件不存储用户数据
C)数据库文件用来组织和管理相互联系的多个数据表及相关的数据库对象。
D)多个数据表存储在一个物理文件中
2.在VisualFoxPro中,表结构中的逻辑型、备注型、日期型字段的宽度由系统自动给出,它们分别为A
A)1、4、8B)4、4、10
C)1、10、8D)2、8、8
3.在VisualFoxPro中,学生表STUDENT中包含有通用型字段简介,表中通用型字段中的数据均存储到另一个文件中,该文件名为D
A)简介.FPTB)STUDENT.DBF
C)简介.DBTD)STUDENT.FTP
4.在VisualFoxPro中,存储图象的字段类型应该是B
A)备注型B)通用型C)字符型D)双精度型
5.在VisualFoxPro中,下列关于表的叙述正确的是C
A)在数据库表和自由表中,都能给字段定义有效性规则和默认值
B)自由表不能建立候选索引
C)自由表加入到数据库中,可以变为数据库表
D)一个自由表加入到多个数据库中
6.在VisualFoxPro中,建立数据库表时,将年龄字段值限制在18之上的这种约束属于B
A)实体完整性约束B)域完整性约束
C)参照完整性约束D)视图完整性约束
7.通过指定字段的数据类型和宽度来限制该字段的取值范围,这属于数据完整性中C
A)参照完整性约束B)实体完整性约束
C)域完整性约束D)字段完整性约束
8.数据库表可以设置默认值,默认值是D
A)逻辑表达式B)字符表达式C)数值表达式D)以上都不对
9.在VisualFoxPro中,创建一个名为SDB.DBC的数据库文件,使用的命令是D
A)CREATEB)CREATESDB
C)CREATETABLESDBD)CREATEDATABASESDB
10.打开数据库abc的正确命令是A
A)OPENDATABASEabcB)USEabc
C)USEDATABASEabcD)OPENabc
11.使数据库表变为自由表的命令是B
A)DROPTABLEB)REMOVETABLE
C)FREETABLED)RELEASETABLE
12.在VisualFoxPro中,调用表设计器建立数据库表STUDENT.DBF的命令是C
A)MODIFYSTRUCTURESTUDENTB)MODIFYCOMMANDSTUDENT
C)CREATESTUDENTD)CREATETABLESTUDENT
13.要为当前表所有职工增加100元工资应该使用命令D
A)CHANGE工资WITH工资+100
B)REPLACE工资WITH工资+100
C)CHANGEALL工资WITH工资+100
D)REPLACEALL工资WITH工资+100
14.在VisualFoxPro中,使用LOCATEFOR<
expL>
命令按条件查找记录,当查找到满足条件的第一条记录后,如果还需要查找下一条满足条件的记录,应使用C
A)再次使用LOCATEFOR<
命令B)SKIP命令
C)CONTINUE命令D)GO命令
15.当前打开的图书表中有字符型字段“图书号”,要求将图书号以字母A开头的图书记录全部打上删除标记,通常可以使用命令A
A)DELETEFOR图书号="
A"
B)DELETEWHILE图书号="
C)DELETEFOR图书号="
D)DELETEFOR图书号LIKE"
A%"
16.在VisualFoxPro中,建立索引的作用之一是C
A)节省存储空间B)便于管理
C)提高查询速度D)提高查询和更新的速度
17.下面有关索引的描述正确的是C
A)建立索引以后,原来的数据库表文件中记录的物理顺序将被改变
B)索引与数据库表的数据存储在一个文件中
C)创建索引是创建一个指向数据库表文件记录的指针构成的文件
D)使用索引并不能加快对表的查询操作
18.可以伴随着表的打开而自动打开的索引是C
A)单一索引文件(IDX)B)复合索引文件(CDX)
C)结构化复合索引文件D)非结构化复合索引文件
19.若所建立索引的字段值不允许重复,并且一个表中只能创建一个,它应该是A
A)主索引B)唯一索引C)候选索引D)普通索引
20.不允许记录中出现重复索引值的索引是C
A)主索引B)主索引、候选索引、普遍索引
C)主索引和候选索引D)主索引、候选索引和唯一索引
21.以下关于主索引和侯选索引的叙述正确的是A
A)主索引和侯选索引都能保证表记录的惟一性
B)主索引和侯选索引都可以建立在数据库表和自由表上
C)主索引可以保证表记录的惟一性,而侯选索引不能
D)主索引和侯选索引是相同的概念
22.在表设计器的“字段”选项卡中可以创建的索引是D
A)唯一索引B)候选索引
C)主索引D)普通索引
23.在创建数据库表结构时,给该表指定了主索引,这属于数据完整性中的B
A)参照完整性B)实体完整性
C)域完整性D)用户定义完整性
24.用命令"
INDEXon姓名TAGindex_name"
建立索引,其索引类型是C
A)主索引B)候选索引C)普通索引D)唯一索引
25.用命令“INDEXON姓名TAGindex_nameUNIQUE”建立索引,其索引类型是D
26.执行命令"
建立索引后,下列叙述错误的是B
A)此命令建立的索引是当前有效索引
B)此命令所建立的索引将保存在.idx文件中
C)表中记录按索引表达式升序排序
D)此命令的索引表达式是"
姓名"
,索引名是"
index_name"
27.不论索引是否生效,定位到相同记录上的命令是C
A)GOTOPB)GOBOTTOMC)GO6D)SKIP
28.打开表并设置当前有效索引(相关索引已建立)的正确命令是B
A)ORDERstudentIN2INDEX学号B)USEstudentIN2ORDER学号
C)INDEX学号ORDERstudentD)USEstudentIN2
29.有一学生表文件,且通过表设计器已经为该表建立了若干普通索引,其中一个索引的索引表达式为姓名字段,索引名为XM。
现假设学生表已经打开,且处于当前工作区中,那么可以将上述索引设置为当前索引的命令是D
A)SETINDEXTO姓名
B)SETINDEXTOXM
C)SETORDERTO姓名
D)SETORDERTOXM
30.要控制两个表中数据的完整性和一致性可以设置"
参照完整性"
,要求这两个表A
A)是同一个数据库中的两个表B)不同数据库中的两个表
C)两个自由表D)一个是数据库表另一个是自由表
31.设有两个数据库表,父表和子表之间是一对多的联系,为控制子表和父表的关联,可以设置“参照完整性规则”,为此要求这两个表B
A)在父表连接字段上建立普通索引,在子表连续字段上建立主索引
B)在父表连接字段上建立主索引,在子表连续字段上建立普通索引
C)在父表连接字段上不需要建立任何索引,在子表连接字段上建立普通索引
D)在父表和子表的连接字段上都要建立主索引
32.VisualFoxPro参照完整性规则不包括B
A)更新规则B)查询规则C)删除规则D)插入规则
33.在VisualFoxPro中进行参照完整性设置时,要想设置成:
当更改父表中的主关键字段或候选关键字段时,自动更改所有相关子表记录中的对应值。
应选择C
A)限制(Restrict)B)忽略(Ignore)
C)级联(Cascade)D)级联(Cascade)或限制(Restrict)
34.有关参照完整性的删除规定,正确的描述是C
A)如果删除规则选择的是“限制“,则当用户删除父表中的记录时,系统将自动删除子表中的所有相关记录。
B)如果删除规则选择的是“级联“,则当用户删除父表中的记录时,系统将禁止删除子表相关的父表中的记录。
C)如果删除规则选择的是“忽略“,则当用户删除父表中的记录时,系统不负责做任何工作。
D)上面三种说法都不对
35.VisualFoxPro的“参照完整性”中“插入规则“包括的选择是D
A)级联和忽略B)级联和删除C)级联和限制D)限制和忽略
36.命令SELECT0的功能是A
A)选择编号最小的空闲工作区B)选择编号最大的空闲工作区
C)随机选择一个工作区的区号D)无此工作区,命令错误
37.执行下列一组命令之后,选择"
职工"
表所在工作区的错误命令是B
CLOSEALL
USE仓库IN0
USE职工IN0
A)SELECT职工B)SELECT0C)SELECT2D)SELECTB
38.在VisualFoxPro的数据工作期窗口,使用SETRELATION命令可以建立两个表之间的关联,这种关联是C
A)永久性关联B)永久性关联或临时性关联
C)临时性关联D)永久性关联和临时性关联
39.两表之间"
临时性"
联系称为关联,在两个表之间的关联已经建立的情况下,有关"
关联"
的正确叙述是C
A)建立关联的两个表一定在同一个数据库中
B)两表之间"
联系是建立在两表之间"
永久性"
联系基础之上的
C)当父表记录指针移动时,子表记录指针按一定的规则跟随移动
D)当关闭父表时,子表自动被关闭
40.下面有关表间永久联系和关联的描述中,正确的是B
A)永久联系中的父表一定有索引,关联中的父表不需要有索引
B)无论是永久联系还是关联,子表一定有索引
C)永久联系中子表的记录指针会随父表的记录指针的移动而移动
D)关联中父表的记录指针会随子表的记录指针的移动而移动
1.数据库文件的扩展名是DBC,数据库表文件的扩展名是DBF,自由表的扩展名是DBF。
2.打开数据库设计器的命令是MODIFYDATABASE。
3.在定义字段有效性规则时,在规则框中输入的表达式类型是逻辑型。
4.在VisualFoxPro中,相当于主关键字的索引是主索引
5.在数据表student的表设计器中所建立的索引存放在结构化复合索引中,该文件名为student.cdx。
四、结构化查询语言
1.在SQLSELECT语句中用于实现关系的选择运算的短语是C
A)FORB)WHILEC)WHERED)CONDITION
2.以下有关SQL的SELECT语句的叙述中,正确的是D
A)SELECT子句中只能包含表中的字段,不能使用表达式
B)SELECT子句中列的顺序应该与表中列的顺序一致
C)SELECT子句中的AS短语用来规定数据表的别名
D)当SELECT子句中的字段是FROM短语后的多个数据表的公共字段,则应在字段前面加上数据表的别名。
3.查询订购单号(字符型,长度为4)尾字符是"
1"
的错误命令是C
A)SELECT*FROM订单WHERESUBSTR(订购单号,4)="
B)SELECT*FROM订单WHERESUBSTR(订购单号,4,1)="
C)SELECT*FROM订单WHERE"
$订购单号
D)SELECT*FROM订单WHERERIGHT(订购单号,1)="
4.在SQL语句中,与表达式“湖南”$地址功能相同的表达式是A
A)地址LIKE“%湖南%”B)LEFT(地址,4)=“湖南”
C)地址IN“%湖南%”D)AT(地址,“湖南”)>
5.在SQL语句中,与表达式商品名称NOTIN("
电视机"
"
冰箱"
)"
功能相同的表达式是C
A)商品名称="
AND商品名称="
B)商品名称="
OR商品名称="
C)商品名称!
="
AND商品名称!
D)商品名称<
>
"
OR商品名称<
6.使用SQL语句进行分组检索时,为了去掉不满足条件的分组,应当B
A)使用WHERE子句
B)在GROUPBY后面使用HAVING子句
C)先使用WHERE子句,再使用HAVING子句。
D)先使用HAVING子句,再使用WHERE子句
(7)~(13)使用的数据表如下三个表:
职员.DBF:
职员号C(3),姓名C(6),性别C
(2),组号N
(1),职务C(10)
客户.DBF:
客户号C(4),客户名C(36),地址C(36),所在城市C(36)
订单.DBF:
订单号C(4),客户号C(4),职员号C(3),签订日期D,金额N(6.2)
7.查询金额最大的那10%订单的信息。
正确的SQL语句是D
A)SELECT*TOP10PERCENTFROM订单
B)SELECTTOP10%*FROM订单ORDERBY金额
C)SELECT*TOP10PERCENTFROM订单ORDERBY金额
D)SELECTTOP10PERCENT*FROM订单ORDERBY金额DESC
8.查询订单数在3个以上、订单的平均金额在200元以上的职员号。
正确的SQL语句是B
A)SELECT职员号FROM订单GROUPBY职员号HAVINGCOUNT(*)>
3ANDAVG_金额>
200
B)SELECT职员号FROM订单GROUPBY职员号HAVINGCOUNT(*)>
3ANDAVG(金额)>
C)SELECT职员号FROM订单GROUPBY职员号HAVINGCOUNT(*)>
3WHEREAVG(金额)>
D)SELECT职员号FROM订单GROUPBY职员号WHERECOUNT(*)>
9.显示2005年1月1日后签订的订单,显示订单的订单号、客户以及签定日期。
正确的SQL语句是A
A)SELECT订单号,客户名,签订日期FROM订单JOIN客户ON订单.客户号=客户.客户号WHERE签订日期>
{^2005-1-1}
B)SELECT订单号,客户名,签订日期FROM订单JOIN客户WHERE订单.客户号=客户.客