2020年计算机二级MySQL考试每日一练(6月17日)

2020年计算机二级MySQL考试每日一练(6月17日),第1张

备考全国计算机二级MySQL考试的小伙伴们,复习的都怎么样了呢?环球青藤小编发布了2020年计算机二级MySQL考试每日一练供大家参考复习,小伙伴们快来做一做,测试一下自己吧!了解更多全国计算机二级MySQL备考资料敬请关注环球青藤计算机二级频道。

2020年计算机二级MySQL考试每日一练(6月17日)

1.若有定义语句:int a[3][6],按在内存中的存放顺序,a数组的第10个元素是( )。

A.a[o][4]

B.a[1][3]

C.a[o][3]

D.a[1][4]

答案:B

2.有以下程序

#include

void fun(char**p)

{++pprintf("%s",*p)}

main()

{char*a[]={"Morning","Afternoon","Evening"," Night")

fun(a)

}

程序的运行结果是( )。

A.Afternoon

B.fternoon

C.Morning

D.orning

答案:A

3.若有定义语句:int a[2][3],*p[3],则以下语句中正确的是( )。

A.p=a

B.p[0]=a

C.p[o]=&a[1][2]

D.p[1]=&a

答案:B

4.有以下程序

#include

void fun(int*a,int n)/*fun函数的功能是将a所指数组元素从大到小排序*/

{int t,i,j

for(i=0i<n-1j++) p=""></n-1j++)>

for(j=i+lj<nj++) p=""></nj++)>

if(a[i]</a[j]){t=a[i]a[i]=a[j]a[j]=t}>

}

main()

{int c[10]={1,2,3,4,5,6,7,8,9,0),i

fun(c+4,6)

for(i=0i<10i++)printf("%d,",c[i])

printf("n")

}

程序运行的结果是( )。

A.1,2,3,4,5,6,7,8,9,0,

B.0,9,8,7,6,5,1,2,3,4,

C.0,9,8,7,6,5,4,3,2,1,

D.1,2,3,4,9,8,7,6,5,0,

答案:D

5.有以下程序

#include

int fun(char s[])

{int n=0

while(*s<='9'&&*s>='0'){n=10*n+*s-'o's++)

return(n)

}

main()

{char s[10]={'6','1','*','4','*','9','*',' 0','*')

printf("%d",fun(s))

}

程序运行的结果是( )。

A.9

B.61490

C.61

D.5

答案:C

更多2020年计算机二级MySQL考试每日一练试题,请继续关注环球青藤计算机二级频道。需要及时了解考试动态的小伙伴可“ 免费预约短信提醒”届时环球青藤会及时为大家推送2020年计算机二级考试相关信息提醒。环球青藤友情提示:对于想要参加计算机二级考试的小伙伴们,环球青藤特地为您准备了计算机二级考试资料,如有需要请点击文章下方“免费下载>>>计算机二级考试资料”下载学习。

1.InnoDB不支持FULLTEXT类型的索引。

2.InnoDB 中不保存表的具体行数,也就是说,执行select count(*) from

table时,InnoDB要扫描一遍整个表来计算有多少行,但是MyISAM只要简单的读出保存好的行数即可。注意的是,当count(*)语句包含

where条件时,两种表的 *** 作是一样的。

3.对于AUTO_INCREMENT类型的字段,InnoDB中必须包含只有该字段的索引,但是在MyISAM表中,可以和其他字段一起建立联合索引。

4.DELETE FROM table时,InnoDB不会重新建立表,而是一行一行的删除。MyISAM 是表所

innodb是行锁

5.LOAD TABLE FROM MASTER(从主负载表) *** 作对InnoDB是不起作用的,解决方法是首先把InnoDB表改成MyISAM表,导入数据后再改成InnoDB表,但是对于使用的额外的InnoDB特性(例如外键)的表不适用。

另外,InnoDB表的行锁也不是绝对的,如果在执行一个SQL语句时MySQL不能确定要扫描的范围,InnoDB表同样会锁全表,例如update

table set num=1 where name like “"2%”

6.InnoDB 支持事物

选择存储引擎 根据实际情况选择。

一般情况下如果查询多建议使用myIsam 。

如果你需要事务处理或是外键,那么InnoDB 可能是比较好的方式。

优化MYSQL数据库的方法:

1,选取最适用的字段属性,尽可能减少定义字段长度,尽量把字段设置NOT NULL,例如'省份,性别',最好设置为ENUM

2,使用join代替子查询

3,使用联合(UNION)来代替手动创建的临时表

4,事务处理(保证数据完整性,例如添加和修改同时,两者成立则都执行,一者失败都失败)

5,适当建立索引(如何建立索引?索引的利与弊?)

6,优化sql语句

7,explain可以看到mysql执行计划

8,分表(垂直分表,水平分表?)

9,数据库主从

一、不定项选择题(共40题,每小题2.5分,总分100分)1. 数据库管理系统的发展历经了如下那些模型阶段( ACDE )A. 层次模型 B. 结构模型 C. 关系模型D. 网状模型 E.对象模型2. 关系型数据库的核心单元是(B)A. 对象B. 表C. 行 D. 列3. 对于关系型数据库来说,表之间存在下面那些关系( ABC )A. 一对一关系 B. 一对多关系C. 多对多关系 D. 继承关系4. 在SQL中,下面对于数据定义语言(DDL)描述正确的是( D )。A. DDL关心的是数据库中的数据 B. 完成数据的增、删、改、查 *** 作C. 控制对数据库的访问D. 定义数据库的结构5. MySQL是一种(C)数据库管理系统。A. 层次型 B. 网络型C. 关系型 D. 对象型6. SQL中,下列 *** 作有语法错误的是( B )A. AGE IS NOT NULL B. NOT(AGE IS NULL)C. SNAME=‘王五’D. SNAME=‘王%’7. SQL中,下列关于创建、管理数据库的 *** 作语句不正确的是( CDE )A. CREATE DATABASE InstantB. USE Instant C. NEW DATABASE Instant D. Connection InstantE. Delete DATEBASE Instant8. 在MySQL中,不存在的数据类型是(F)。A. INT B. TEXT C. DECIMALD. VARCHAR E. DATETIME F. VARCHAR2 9. 在MySQL中,下列关于创建数据库表的描述正确的是( C )。A. 在创建表时必须设定列的约束B. 在删除表的时候通过外键约束连接在一起的表会被一同删除C. 在创建表时必须设置列类型 D. 通过CREATE TABLE new_t SELECT * FROM old_t复制表的同时,表的约束能够一起被复制到新表中10. 根据数据完整性实施的方法,可以将其分为( ACDF )A. 实体完整性 B. 表完整性 C.域完整性D. 引用完整性 E. 记录完整性F.用户自定义完整性11. 下面关于域完整性的方法,不正确的是( A )。A. 主键约束B. 外键约束C.检查约束D. 非空约束E. 默认值12. 下面关于创建和管理索引正确的描述是( C )。A. 创建索引是为了便于全表扫描B. 索引会加快DELETE、UPDATE和INSERT语句的执行速度C. 索引被用于快速找到想要的记录D. 大量使用索引可以提高数据库的整体性能13. SQL中,“AGE IN(20,22)”的语义是( D )。A. AGE<=22 AND AGE >=20 B. AGE <22 AND AGE >20C. AGE =20 AND AGE =22D. AGE =20 OR AGE =2214. 有一个关系:学生(学号,姓名,系别),规定学号的值域是8个数字组成的字符串,这一规则属于(C)A. 实体完整性约束B. 参照完整性约束C. 用户自定义完整性约束 D. 关键字完整性约束15. 下面SQL是来源于考试成绩表t_exam:学号stuId、科目编号subId、成绩score,考试日期:ex_date。有以下sql,它表示的意思是:( B )Select stu_id,subId,count(*) as xFrom t_examWhere ex_date=’2008-08-08’Group stu_id,subIdHaving count(*)>1 Order by x descA. 找出’2008-08-08’这天某科考试2次及以上的学生记录B. 找出’2008-08-08’这天,某科考试2次及以上的学生记录,考试次数多的放在前面C. 找出’2008-08-08’这天,某科考试2次及以上的学生记录,考试次数少的放在前面D. 根据学号和学科分组,找出每个人考试科数,最后考试次数多的放在前面16. EMP表如下所示,下面哪些SQL语句的返回值为3:( BD )EMP雇员号 雇员名 部门号 工资 001  张山  02 2000010  王宏达 01 1200056  马林生 02 1000101  赵敏04 A. select count(*) from empB. select count(distinct 部门号) from empC. select count(*) from emp group by 雇员号D. select count(工资) from emp17. 下面那一项不是SELECT语句对数据的 *** 作:(D)A. 投影B. 联接C. 并 D. 级联18. 下面关于SQL数据查询 *** 作描述正确的有:( ABD )A. 投影 *** 作是选择对表中的哪些列进行查询 *** 作B. 使用DISTINCT关键字可以过滤查询中重复的记录C. 在模糊查询中,通配符“%”表示匹配单个字符,而“_”表示匹配零个或多个字符D. 在MySQL中使用LIMIT关键字限制从数据库中返回记录的行数19. 在SQL语言中,条件“BETWEEN 20 AND 30”表示年龄在20到30之间,且( A )。A. 包括20岁和30岁B. 不包括20岁和30岁C. 包括20岁,不包括30岁 D. 不包括20岁,包括30岁20. SQL语言中,删除EMP表中全部数据的命令正确的是(C)。A. delete * from emp B. drop table empC. truncate table emp D. 没有正确答案21. 有关索引的说法错误的是( AD )A. 索引的目的是为增加数据 *** 作的速度B. 索引是数据库内部使用的对象C. 索引建立得太多,会降低数据增加删除修改速度D. 只能为一个字段建立索引22. 下列哪个关键字在Select语句中表示所有列( A )A. * B. ALL C. DESC D. DISTINCT23. 在表中设置外键实现的是哪一类数据完整性( B )A. 实体完整性 B. 引用完整性C. 用户定义的完整性 D. 实体完整性、引用完整性和用户定义的完整性24. 下面正确表示Employees表中有多少非NULL的Region列的SQL语句是( B )A. SELECT count(* ) from EmployeesB. SELECT count(ALL Region) from EmployeesC. SELECT count(Distinct Region) from EmployeesD. SELECT sum(ALL Region) from Employees25. 下面可以通过聚合函数的结果来过滤查询结果集的SQL子句是(C)A. WHERE子句 B. GROUP BY子句C. HAVING 子句 D. ORDER BY子句26. t_score(stu_id,sub_id,score),即成绩表(学号,科目编号,成绩)。学生如果某科没有考试,则该科成绩录入null。能够获取各位学生的平均成绩的选项是( A )A. select avg(nvl(socre,0)) from score group by stu_idB. select stu_id,avg(sorce) from scoreC. select stu_id,avg(score) from scoreD. select stu_id,sum(score)/count(score) from score27. 若要求查找S表中,姓名的第一个字为'王'的学生学号和姓名。下面列出的SQL语句中,哪个是正确的(B)A. SELECT Sno,SNAME FROM S WHERE SNAME=′王%′B. SELECT Sno,SNAME FROM S WHERE SNAME LIKE′王%′C. SELECT Sno,SNAME FROM S WHERE SNAME LIKE′王_′D. 全部28. 若要求“查询选修了3门以上课程的学生的学生号”,正确的SQL语句是( B )A. SELECT Sno FROM SC GROUP BY Sno WHERE COUNT(*)>3B. SELECT Sno FROM SC GROUP BY Sno HAVING( COUNT(*)>3)C. SELECT Sno FROM SC ORDER BY Sno WHERE COUNT(*)>3D. SELECT Sno FROM SC ORDER BY Sno HAVING COUNT(*)>= 329. 对下面的查询语句描述正确的是(D)Select StudentID,Name, (select count(*) from StudentExamwhere StudentExam.StudentID = Student.StudentID) as ExamsTakenfrom Studentorder by ExamsTaken descA. 从Student表中查找StudentID和Name,并按照升序排列B. 从Student表中查找StudentID和Name,并按照降序排列C. 从Student表中查找StudentID、Name和考试次数D. 从Student表中查找StudentID、Name,并从StudentExam表中查找与StudentID一致的学生考试次数,并按照降序排列30. 下面题基于学生-课程数据库中的三个基本表:学生信息表:s(sno, sname, sex, age, dept) 主键为sno课程信息表:c(cno, cname, teacher) 主键为cno学生选课信息表:sc(sno, cno, grade) 主键为(sno, cno)“从学生选课信息表中找出无成绩的学生信息”的SQL语句是( C d)A. SELECT * FROM sc WHERE grade=NULLB. SELECT * FROM sc WHERE grade IS ‘ ’C. SELECT * FROM sc WHERE grade IS NULLD. SELECT * FROM sc WHERE grade =‘ ’31. 当子查询返回多行时,可以采用的解决办法是( C )。A. 使用聚合函数 B. Where条件判断C. 使用IN运算符D. 使用Group by进行分组32. 下面关于在子查询中使用运算符描述不正确的是( D )。A. 使用IN运算符用于查找字段值属于某一组值的行B. 使用Exists运算符用于测试子查询是否返回行,如果返回其值就为真C. 使用ALL运算符用于测试子查询结果集的所有行是否满足指定的条件D. 使用Any运算符用于测试子查询结果集中的一行或多行不满足指定的条件33. 下面关于组合查询描述不正确的是(D )。A. 从一个表中获取的数据必须和其它表中的数据具有相同的列数B. 两个表中相对应的列必须具有相同的数据类型C. UNION的结果集列名与第一个SELECT语句的结果集中的列名相同D. UNION的结果集列名与第二个SELECT语句的结果集中的列名相同E. UNION ALL运算符返回每个数据集的所有成员34. 下面关于联接的描述正确的是(A)。A. 内联接使用比较运算符根据每个表共有的列值来匹配两个表中的行B. 左外联接结果集包含从右边的表返回的所有行C. 右外联接结果集包含从左边的表返回的所有行D. 全外联接返回左表和右表中的所有匹配的行35. 下面关于数据库设计过程正确的顺序描述是( C )。A. 需求收集和分析、逻辑设计、物理设计、概念设计B. 概念设计、需求收集和分析、逻辑设计、物理设计C. 需求收集和分析、概念设计、逻辑设计、物理设计D. 需求收集和分析、概念设计、物理设计、逻辑设计36. ER图属于下面哪一种数据库设计模型( B )。A. 物理数据模型B. 概念数据模型C. 逻辑数据模型D. 需求模型37. 非主键必须完全依赖于主键列,这属于下列范式的内容( BC )A. 1NFB. 2NF C. 3NFD. 都没有的38. 如果一个字段的数据必须来源另一个表的主键,那么要在这个字段上建立( B )。A. PK(主键) B. FK(外键) C. UK(唯一键) D. 复合主键39. 根据三个范式的定义,下面哪个选项的设计是正确的( C )职工编号姓名工种车间车间主任1001 李宁车工一车间 周杰1002 王海铣工一车间 周杰1003 赵亮钳工二车间 吴明1001 李宁钳工二车间 吴明A. 员工表、工种表、车间表B. 员工表、工种表、车间表、车间主任表C. 员工表、工种表、车间表、员工工种表、员工车间表D. 以上设计均不正确 40. 下列说法中,哪些是正确的( BD )A. RDBMS是数据库管理系统的简称B. 各行记录都不能重复,是第二范式要求的C. 在数据库设计中一定要满足第三范式D. 索引越多,查询越快,数据更新越慢


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/7647861.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-08
下一篇 2023-04-08

发表评论

登录后才能评论

评论列表(0条)

保存