国家二级MySQL数据库机试(选择题)模拟试卷29
单项选择题
1.若实体A和B是一对多的联系,实体B和C是一对一的联系,则实体A和C的联系是(B)
A. 一对一
B. 一对多
C. 多对一
D. 多对多
解析:由于B和C有一一对应的联系,而A和B之间有一对多的联系,则通过关系之间的传递,则A和C之间也是一对多的联系。
2.在满足实体完整性约束的条件下(A)
A. 一个关系中应该有一个或多个候选关键字
B. 一个关系中只能有一个候选关键字
C. 一个关系中必须有多个候选关键字
D. 一个关系中可以没有候选关键字
解析:在关系数据库中,实体完整性的概念是主属性不能为空。在满足实体完整性的前提下,必须在关系中存在主属性,也就是在关系中应该有候选关键字。一个关系中可以有一个或者多个候选关键字。
3.执行下列命令序列后,最后一条命令的显示结果是
DIMENSION M(2,2)
M(1,1)=10
M(1,2)=20
M(2,1)=30
M(2,2)=40
7M(2)(C)
A. 变量未定义的提示
B. 10
C. 20
D. .F.
解析:DIMENSl0N命令是创建数组命令,其格式是:DIMENSION([,])[,……]。本题定义的是一个二维数组,可以用一维数组的形式访问二维数组。例如M(1,1)=M(1),M(1,2)=M(2)。
4.运算结果不是2010的表达式是(C)
A. int(2010.9)
B. round(2010.1,0)
C. ceiling(2010.1)
D. floor(2010.9)
解析:INT():返回指定数值表达式的整数部分。
CEILING():返回大于等于指定数值表达式的最小整数。
FLOOR():返回小于等于指定数值表达式的最大整数。
ROUND(,):返回指定表达式在指定位置四舍五入后的结果。
本题中,Int(2010.9)=2010,Round(2010.1,0)=2010,Ceiling(2010.1)=2011,Floor(2010.9)=-2010。
5.下列程序段执行以后,内存变量y的值是
CLEAR
x=12345
y=0
D0 WHILE x>0
y=y+x%10
x=int(x/10)
ENDDO
?y(D)
A. 54321
B. 12345
C. 51
D. 15
解析:本题考查的是DO WHILE循环语句的使用,其中涉及到一个累加的计算,依次对变量x的值,即本题中的12345,从后向前对各位数进行相加,最后输出,即输出5+4+3+2+1的计算值。
6.在Visual FoxPro中,在数据库中创建表的CREATE TABLE命令中定义主索引、实现实体完整性规则的短语是(C)
A. FOREIGN KEY
B. DEFAULT
C. PRIMARY KEY
D. CHECK
解析:通过sQL命令可以定义表结构,建立表的关键短语是CREATE TABLE。建立表时可以通过PRIMARY KEY定义主索引,通过FOREIGN KEY短语定义外键,通过DEFAULT短语定义默认值,通过CHECK短语定义有效性规则。
7.一个表可以建立多个索引,但只能建立一个的索引是(A)
A. 主索引
B. 唯一索引
C. 候选索引
D. 普通索引
解析:本题考查几种索引的特点。主索引不允许表中有重复的字段值,一个表只能有一个主索引。候选索引不允许表中有重复的字段值,因此候选索引有资格被选作主索引。一个表可有多个候选索引。唯一索引允许表中有重复的字段值,但索引项不重复。一个表可有多个唯一索引。普通索引允许表中有重复的字段值,索引项也对应重复。一个表可有多个普通索引。
8.在Visual FoxPro中,不允许出现重复字段值的索引是(B)
A. 主索引和唯一索引
B. 主索引和候选索引
C. 唯一索引和候选索引
D. 唯一索引
解析:本题考查主索引和候选索引的特征。主索引不允许表中有重复的字段值,一个表只能有一个主索引。候选索引不允许表中有重复的字段值,因此候选索引有资格被选作主索引,一个表可有多个候选索引。唯一索引允许表中有重复的字段值,但索引项不重复,一个表可有多个唯一索引。普通索引允许表中有重复的字段值,索引项也对应重复,一个表可有多个普通索引。
9.在Visual FoxPro中,如果在表之间的联系中设置了参照完整性规则,并在删除规则中选择了“级联”,当删除父表中的记录,其结果是(C)
A. 只删除父表中的记录,不影响子表
B. 任何时候都拒绝删除父表中的记录
C. 在删除父表中记录的同时自动删除子表中的所有参照记录
D. 若子表中有参照记录,则禁止删除父表中记录
解析:如果在删除规则选择“级联”,当删除父表中记录时,则自动删除子表中的所有相关记录。
10.查询在“北京”和“上海”出生的学生信息的SQL语句是(D)
A. SELECT*FROM学生WHERE出生地=‘北京’AND‘上海’
B. SELECT*FROM学生WHERE出生地=‘北京’OR‘上海’
C. SELECT*FROM学生WHERE出生地=‘北京’AND出生地=‘上海’
D. SELECT*FROM学生WHERE出生地=‘北京’OR出生地=‘上海’
解析:一个学生的出生地,要么存“北京”,要么在“上海”,所以两者的关系是“或”,用关键字or。
11.设有S(学号,姓名,性别)和SC(学号,课程号,成绩)两个表,用下列SQL语句检索选修的每门课程的成绩都高于或等于85分的学生的学号、姓名和性别,正确的是(D)
A. SELECT学号,姓名,性别FROM s WHERE EXISTS; (SELECT*FROM sc WHERE sc。学号=s.学号AND成绩<=85)
B. SELECT学号,姓名,性别FROM s WHERE NOT EXISTS; (SELECT*FROM sc WHERE sc.学号=s.学号AND成绩<=85)
C. SELECT学号,姓名,性别FROM s WHERE EXISTS; (SELECT*FROM sc WHERE sc.学号=s.学号AND成绩>85)
D. SELECT学号,姓名,性别FROM s WHERE NOT EXISTS; (SELECT*FROM sc WHERE sc.学号=s.学号AND成绩<85)
解析:题目中给出的四个选项为利用SQL谓词查询实现题干要求,正确的语句应该是:
SELECT学号,姓名,性别FROM S WHERE NOT EXISTS:
(SELECT*FROM SC WHERE SC.学号=S.学号AND成绩<85)
或者:
SELECT学号,姓名,性别FROM S WHERE EXISTS:
(SELECT*FRO
本文档预览:3600字符,共8273字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载