VFP复习题21Word格式.docx
《VFP复习题21Word格式.docx》由会员分享,可在线阅读,更多相关《VFP复习题21Word格式.docx(7页珍藏版)》请在冰豆网上搜索。
(A)
A)侯选索引和主索引
B)普通索引和惟一索引
C)惟一索引和主索引
D)惟一索引
(5)打开数据库的命令是(D)
A)USE
B)USEDATABASE
C)OPEN
D)OPENDATABASE
(6)”图书”表中有字符型字段”图书号”。
要求用SQLDELETE命令将图书号以字母A
开头的图书记录全部打上删除标记,正确的命令是(D)
A)DELETEFROM图书FOR图书号LIKE”A%”
B)DELETEFROM图书WHILE图书号LIKE”A%”
C)DELETEFROM图书WHERE图书号=“A*
D)DELETEFROM图书WHERE图书号LIKE”A%”
(7)SQL语句中修改表结构的命令是(A)
A)ALTERTABLE
B)MODIFYTABLE
C)ALTERSTRUCTURE
D)MODIFYSTRUCTURE
(8)要使”产品”表中所有产品的单价上浮8%,正确的SQL命令是(D)
A)UPDATE产品SET单价=单价+单价*8%FORALL
B)UPDATE产品SET单价=单价*1.08FORALL
C)UPDATE产品SET单价=单价+单价*8%
D)UPDATE产品SET单价=单价*1.08
(9)假设同一名称的产品有不同的型号和产地,则计算每种产品平均单价的SQL语句是(D)
A)SELECT产品名称,AVG(单价)FROM产品GROUPBY单价
B)SELECT产品名称,AVG(单价)FROM产品ORDERBY单价
C)SELECT产品名称,AVG(单价)FROM产品ORDERBY产品名称
D)SELECT产品名称,AVG(单价)FROM产品GROUPBY产品名称
(10)从”订单”表中删除签订日期为2004年1月10日之前(含)的订单记录,正确的SQL
语句是(C)
A)DROPFROM订单WHERE签订日期<
={^2004-l-10}
B)DROPFROM订单FOR签订日期<
={^2004-l-lO}
C)DELETEFROM订单WHERE签订日期<
={^2004-1-10}
D)DELETEFROM订单FOR签订日期<
={^2004-l-10)
(11)数据独立性是数据库技术的重要特点之一。
所谓数据独立性是指(B)
A)数据与程序独立存放
B)不同的数据被存放在不同的文件中
C)不同的数据只能被对应的应用程序所使用
D)以上三种说法都不对
(12)在创建数据库表结构时,为该表中一些字段建立普通索引,其目的是(D)
A)改变表中记录的物理顺序B)为了对表进行实体完整性约束
C)加快数据库表的更新速度D)加快数据库表的查询速度
**(13)在指定字段或表达式中不允许出现重复值的索引是(D)
A)惟一索引B)惟一索引和候选索引
C)惟一索引和主索引D)主索引和候选索引
(14)在VisualFoxPro中,以下关于删除记录的描述,正确的是(A)
A)SQL的DELETE命令在删除数据库表中的记录之前,不需要用USE命令打开表
B)SQL的DELETE命令和传统VisualFoxPro的DELETE命令在删除数据库表中的记录之前,都需要用USE命令打开表
C)SQL的DELETE命令可以物理地删除数据库表中的记录,而传统VisualFoxPro的DELETE命令只能逻辑删除数据库表中的记录
D)传统VisualFoxPro的DELETE命令在删除数据库表中的记录之前不需要用USE命令打开表
(15)打开数据库表abc的正确命令是(A)
A)OPENDATABASEabcB)USEabc
C)USEDATABASEabcC)OPENabc
(16)在VisualFoxPro中,下列关于表的叙述正确的是(C)
A)在数据库表和自由表中,都能给字段定义有效性规则和默认值
B)在自由表中,能给字段定义有效性规则和默认值
C)在数据库表中,能给字段定义有效性规则和默认值
D)在数据库表和自由表中,都不能给字段定义有效性规则和默认值
(17)在VisualFoxPro中,以下关于视图描述中错误的是(A)
A)通过视图不能获取表的信息B)通过视图可以对表进行更新
C)视图是一个虚表D)视图与查询是一样的
(18)使用SQL语句将学生表S中年龄(AGE)大于30岁的记录删除,正确的命令是(B)
A)DELETEFORAGE>
30B)DELETEFROMSWHEREAGE>
30
C)DELETESFORAGE>
30D)DELETESWHEREAGE>
(19)在VisualFoxPro中,使用LOCATEFOR<
expL>
命令按条件查找记录,当查找到满足条件的第一条记录后,如果还需要查找下一条满足条件的记录,应使用(C)
A)再次使用LOCATEFOR<
命令
B)SKIP命令
C)CONTINUE命令
D)GO命令
(20)在VisualFoxPro中,删除数据库表S的SQL命令是(B)
A)DROPTABLESB)DELETETABLES
C)DELETETABLES.DBFD)ERASETABLES
(21)下列表达式中,表达式返回结果为.F.的是(A)空白不等于空格!
!
A)AT(“A”,”BCD”)B)“[信息]”$“管理信息系统”
C)ISNULL(.NULL.)D)SUBSTR(“计算机技术”,3,2)
(22)使用SQL语句向学生表S(SNO,SN,AGE,SEX)中添加一条新记录,字段学号(SNO)、姓名(SN)、性别(SEX)、年龄(AGE)的值分别为0401、王芳、女、18,正确的命令是(A)
A)APPENDINTOS(SNO,SN,SXE,AGE)valueS(‘0401’,’王芳’,’女’,18)
B)APPENDSvalueS(‘0401’,’王芳’,’女’,18)
C)INSERTINTOS(SNO,SN,SEX,AGE)valueS(‘0401’,’王芳’,’女’,18)
D)INSERTSvalueS(‘0401’,’王芳’,18,’女’)
第(23)—(24)题使用如下三个数据库表
学生表:
S(学号,姓名,性别,出生日期,院系)
课程表:
C(课程号,课程名,学时)
选课成绩表:
SC(学号,课程号,成绩)
在上述表中,出生日期数据类型为日期型,学时和成绩为数值型,其他均为字符型。
(23)用SQL命令查询选修的每门课程的成绩都高于或等于85分的学生的学号和姓名,正确的命令是(C)
A)SELECT学号,姓名FROMSWHERENOTEXISTS;
(SELECT*FROMSCWHERESC.学号=S.学号.AND.成绩<
85)
B)SELECT学号,姓名FROMSWHERENOTEXISTS;
(SELECT*FROMSCWHERESC.学号=S.学号.AND.成绩>
=85)
C)SELECT学号,姓名FROMS,SC;
WHERES.学号=SC.学号.AND.SC.成绩>
=85
D)SELECT学号,姓名FROMS,SC;
WHERES.学号=SC.学号.AND.ALL成绩>
(24)用SQL语言检索选修课程在5门以上(含5门)的学生的学号、姓名和平均成绩,
并按平均成绩降序排序,正确的命令是(A)
A)SELECTS.学号,姓名,平均成绩FROMS,SC;
WHERES.学号=SC.学号;
GROUPBYS.学号HAVINGCOUNT(*)>
=5ORDERBY平均成绩DESC
B)SELECT学号,姓名,AVG(成绩)FROMS,SC;
WHERES.学号=SC.学号ANDCOUNT(*)>
=5;
GROUPBY学号ORDERBY3DESC
C)SELECTS.学号,姓名,AVG(成绩)平均成绩FROMS,SC;
GROUPBYS.学号ORDERBY平均成绩DESC
D)SELECTS.学号,姓名,AVG(成绩)平均成绩FROMS,SC;
=5ORDERBY3DESC
(25)允许出现重复字段值的索引是(B)
A)候选索引和主索引
B)普通索引和唯一索引
C)候选索引和唯一索引
D)普通索引和候选索引
(26)以上关于视图的描述正确的是(B)
A)视图保存在项目文件中
B)视图保存在数据库文件中
C)视图保存在表文件中
D)视图保存在视图文件中、
(27)下面有关表间永久关联和临时关联的描述中,错误的是 (D)
A)永久联系中的父表一定有索引,临时关联中的父表可不需要有索引
B)无论是永久关联还是临时关联,子表一定有索引、
C)永久联系中子表的记录指针会随父表的记录指针的移动而移动
D)临时关联中父表的记录指针会随子表的记录指针的移动而移动
(28)假设职员表已在当前工作区打开,其当其记录的“姓名”字段值为“张三”(字符型,宽度为6)。
在命令窗口输入并执行如下命令:
姓名=姓名“您好”
?
姓名
那么主窗口中将显示(D)
A)张三
B)张三您好
C)张三您好
D)出错信息
(29)有一学生表文件,且通过表设计器已经为该表建立了若干普通索引,其中一个索引的索引表达式为姓名字段,索引名为XM。
现假设学生表已经打开,且处于当前工作区中,那么可以将上述索引设置为当前索引的命令是 (D)
A)SETINDEXTO姓名
B)SETINDEXTOXM
C)SETORDERTO姓名
D)SETORDERTOXM
(30)当前打开的图书表中有字符型字段“图书号”,要求将图书号以字母A开头的图书记录全部打上删除标记,通常可以使用命令(C)
A)DELETEFOR图书号=“A”
B)DELETEWHILE图书号=“A”
C)DELETEFOR图书号=“A”
D)DELETEFOR图书号LIKE“A%”
(31)将订单号为“0060“的订单金额改为169元,正确的SQL语句是D)
A)UPDATE订单SET金额=169WHERE订单号=“0060“
B)UPDATE订单SET金额WITH169WHERE订单号=“0060“
C)UPDATEFROM订单SET金额=169WHERE订单号=“0060“
D)UPDATEFROM订单SET金额WITH169WHERE订单号=“0060“
二、填空题
(1)设有S(学号,姓名,性别)和SC(学号,课程号,成绩)两个表,下面的SQL的SELECT语句检索选修的每门课程的成绩都高于或等于85分的学生的学号、姓名和性别。
SELECT学号,姓名,性别FROMS
WHERENOTEXIST(SELECT*FROMSCWHERESC.学号AND成绩〈85)
(2)表达式{^2005-1-310:
0:
0}一{^2005-10-39:
0}的数据类型是数值型(N)。
(3)"
职工"
表有工资字段,计算工资合计的SQL语句是
SELECT
SUM(工资)
FROM职工
(4)执行命令A=2005/4/2之后,内存变量A的数据类型是数值N型。
(5)如下程序显示的结果是7。
s=1
i=0
dowhilei<
8
s=s+i
i=i+2
enddo
?
s
(6)在VisualFoxPro中,可以在表设计器中为字段设置默认值的表是数据库表。
(7)VisualFoxPro中数据库文件的扩展名(后缀)是.dbc
(8)如下两个数据库表:
获奖牌情况.DBF国家代码C(3),运动员名称C(20),项目名称C(3),名次I
国家.DBF国家代码C(3),国家名称C(20)。
使用“获奖牌情况”和“国家”两个表查询“中国”所获金牌(名次为1)的数量,应使用SQL语句:
SELECTCOUNT(*)FROM国家INNERJOIN获奖牌情况;
ON国家.国家代码=获奖牌情况.国家代码;
WHERE国家.国家名称=“中国”.AND.名次=1