MySql测试题

一、单项选择题

1 .以下聚合函数求数据总和的是 ( )

 A . MAX

 B . SUM

 C . COUNT

 D . AVG

答案: B

2 .可以用 ( ) 来声明游标

 A . CREATE CURSOR

 B . ALTER CURSOR

 C . SET CURSOR

 D . DECLARE CURSOR

答案: D

3 . SELECT 语句的完整语法较复杂,但至少包括的部分是 ( )

 A .仅 SELECT

 B . SELECT , FROM

 C . SELECT , GROUP

 D . SELECT , INTO

答案: B

4 . SQL 语句中的条件用以下哪一项来表达 ( )

 A . THEN

 B . WHILE

 C . WHERE

 D . IF

答案: C

5 .使用 CREATE TABLE 语句的 ( ) 子句,在创建基本表时可以启用全文本搜索

 A . FULLTEXT

 B . ENGINE

 C . FROM

 D . WHRER

答案: A

6 .以下能够删除一列的是 ( )

 A . alter table emp remove addcolumn

 B . alter table emp drop column addcolumn

 C . alter table emp delete column addcolumn

 D . alter table emp delete addcolumn

答案: B

7 .若要撤销数据库中已经存在的表 S ,可用()。

 A . DELETE TABLE S

 B . DELETE S

 C . DROP S

 D . DROP TABLE S

答案: D

8 .查找表结构用以下哪一项 ( )

 A . FIND

 B . SELETE

 C . ALTER

 D . DESC

答案: D

9 .要得到最后一句 SELECT 查询到的总行数,可以使用的函数是 ( )

 A . FOUND_ROWS

 B . LAST_ROWS

 C . ROW_COUNT

 D . LAST_INSERT_ID

答案: A

10 .在视图上不能完成的操作是 ( )

 A .查询

 B .在视图上定义新的视图

 C .更新视图

 D .在视图上定义新的表

答案: D

11 . UNIQUE 惟一索引的作用是 ( )

 A .保证各行在该索引上的值都不得重复

 B .保证各行在该索引上的值不得为 NULL

 C .保证参加惟一索引的各列,不得再参加其他的索引

 D .保证惟一索引不能被删除

答案: A

12 .用于将事务处理写到数据库的命令是 ( )

 A . insert

 B . rollback

 C . commit

 D . savepoint

答案: C

13 .查找条件为:姓名不是 NULL 的记录 ( )

 A . WHERE NAME ! NULL

 B . WHERE NAME NOT NULL

 C . WHERE NAME IS NOT NULL

 D . WHERE NAME!=NULL

答案: C

14 .主键的建立有 ( ) 种方法

 A .一

 B .四

 C .二

 D .三

答案: D

15 .在视图上不能完成的操作是 ( )

 A .更新视图数据

 B .在视图上定义新的基本表

 C .在视图上定义新的视图

 D .查询

答案: B

16 .在 SQL 语言中,子查询是()。

 A .选取单表中字段子集的查询语句

 B .选取多表中字段子集的查询语句

 C .返回单表中数据子集的查询语言

 D .嵌入到另一个查询语句之中的查询语句

答案: D

17 .向数据表中插入一条记录用以下哪一项 ( )

 A . CREATE

 B . INSERT

 C . SAVE

 D . UPDATE

答案: B

18 .在 select 语句的 where 子句中,使用正则表达式过滤数据的关键字是 ( )

 A . like

 B . against

 C . match

 D . regexp

答案: D

19 . SQL 语言的数据操纵语句包括 SELECT 、 INSERT 、 UPDATE 、 DELETE 等。其中最重要的,也是使用最频繁的语句是 ( ) 。 

 A . UPDATE

 B . SELECT

 C . DELETE

 D . INSERT

答案: B

20 .以下哪种操作能够实现实体完整性 ( )

 A .设置唯一键

 B .设置外键

 C .减少数据冗余

 D .设置主键

答案: B

21 . SQL 语言中,删除一个视图的命令是 ( )

 A . REMOVE

 B . CLEAR

 C . DELETE

 D . DROP

答案: D

22 .修改数据库表结构用以下哪一项 ( )

 A . UPDATE

 B . CREATE

 C . UPDATED

 D . ALTER

答案: D

23 .在全文本搜索的函数中,用于指定被搜索的列的是 ( )

 A . MATCH()

 B . AGAINST()

 C . FULLTEXT()

 D . REGEXP()

答案: A

24 .以下语句错误的是 ( )

 A . select sal+1 from emp;

 B . select sal*10,sal*deptno from emp;

 C .不能使用运算符号

 D . select sal*10,deptno*10 from emp;

答案: C

25 .下列 ( ) 不属于连接种类

 A .左外连接

 B .内连接

 C .中间连接

 D .交叉连接

答案: C

26 .若用如下的 SQL 语句创建了一个表 SC : ( )

   CREATE TABLE SC  ( S# CHAR ( 6 )  NOT NULL , C# CHAR ( 3 )  NOT NULL , SCORE INTEGER , NOTE CHAR ( 20 ));向 SC 表插入如下行时,()行可以被插入。

 A .( NULL ,’ 103 ’, 80 ,’选修’)

 B .(’ 200823 ’,’ 101 ’, NULL , NULL )

 C .(’ 201132 ’, NULL , 86 ,’’)

 D .(’ 201009 ’,’ 111 ’, 60 ,必修)

答案: B

27 .删除用户账号命令是 ( )

 A . DROP USER

 B . DROP TABLE USER

 C . DELETE USER

 D . DELETE FROM USER

答案: A

28 .以下语句错误的是 ( )

 A .  alter table emp delete column addcolumn;

 B .  alter table emp modify column addcolumn char(10);

 C . alter table emp change addcolumn addcolumn int;

 D .  alter table emp add column addcolumn int;

答案: A

29 .组合多条 SQL 查询语句形成组合查询的操作符是 ( )

 A . SELECT

 B . ALL

 C . LINK

 D . UNION

答案: D

30 .创建数据库使用以下哪项 ( )

 A . create mytest

 B . create table mytest

 C . database mytest

 D . create database mytest

答案: D

31 .以下哪项用来分组 ( )

 A . ORDER BY

 B . ORDERED BY

 C . GROUP BY

 D . GROUPED BY

答案: D

32 . SQL 是一种 ( ) 语言。

 A .函数型

 B .高级算法

 C .关系数据库

 D .人工智能

答案: C

33 .删除数据表用以下哪一项 ( )

 A . DROP

 B . UPDATE

 C . DELETE

 D . DELETED

答案: A

34 .若要在基本表 S 中增加一列 CN (课程名),可用 ( )

 A . ADD TABLE S ALTER ( CN CHAR (8))

 B . ALTER TABLE S ADD ( CN CHAR (8))

 C . ADD TABLE S ( CN CHAR (8))

 D . ALTER TABLE S  ( ADD CN CHAR (8))

答案: B

35 .下列的 SQL 语句中, ( ) 不是数据定义语句。

 A . CREATE TABLE

 B . GRANT

 C . CREATE VIEW

 D .  DROP VIEW

答案: B

36 .以下删除记录正确的 ( )

 A . delete from emp where name='dony';

 B . Delete * from emp where name='dony';

 C . Drop from emp where name='dony';

 D . Drop * from emp where name='dony';

答案: A

37 .删除经销商 1018 的数据记录的代码为 ( ) from distributors where distri_num=1018

 A . drop table

 B . delete *

 C . drop column

 D . delete

答案: D

38 .按照姓名降序排列 ( )

 A . ORDER BY DESC NAME

 B . ORDER BY NAME DESC

 C . ORDER BY NAME ASC

 D . ORDER BY ASC NAME

答案: B

39 .可以在创建表时用 ( ) 来创建唯一索引,也可以用 ( ) 来创建唯一索引

 A . Create table , Create index

 B .设置主键约束,设置唯一约束

 C .设置主键约束, Create index

 D .以上都可以

答案: C

40 .在 SELECT 语句中,使用关键字 ( ) 可以把重复行屏蔽

 A . TOP

 B . ALL

 C . UNION

 D . DISTINCT

答案: D

41 .以下聚合函数求平均数的是 ( )

 A . COUNT

 B . MAX

 C . AVG

 D . SUM

答案: C

42 .返回当前日期的函数是 ( )

 A . curtime()

 B . adddate()

 C . curnow()

 D . curdate()

答案: D

43 .用来插入数据的命令是 ( ) ,用于更新的命令是 ( )

 A . INSERT , UPDATE

 B . CREATE , INSERT INTO

 C . DELETE , UPDATE

 D . UPDATE,INSERT

答案: A

44 . SELECT COUNT(SAL) FROM EMP GROUP BY DEPTNO; 意思是 ( )

 A .求每个部门中的工资

 B .求每个部门中工资的大小

 C .求每个部门中工资的综合

 D .求每个部门中工资的个数

答案: D

45 .以下表达降序排序的是 ( )

 A . ASC

 B . ESC

 C . DESC

 D . DSC

答案: C

46 .以下哪项不属于数据模型 ( )

 A .关系模型

 B .网状模型

 C .层次模型

 D .网络模型

答案: A

47 .有三个表,它们的记录行数分别是 10 行、 2 行和 6 行,三个表进行交叉连接后,结果集中共有 ( ) 行数据

 A . 18

 B . 26

 C .不确定

 D . 120

答案: D

48 .从 GROUP BY 分组的结果集中再次用条件表达式进行筛选的子句是 ( )

 A . FROM

 B . ORDER BY

 C . HAVING

 D . WHERE

答案: C

49 .为数据表创建索引的目的是 ( )

 A .提高查询的检索性能

 B .归类

 C .创建唯一索引

 D .创建主键

答案: A

50 .如果要回滚一个事务,则要使用 ( ) 语句。

 A . commit transaction

 B .  begin transaction

 C .  revoke  

 D . rollback transaction

答案: D

51 .查找数据表中的记录用以下哪一项 ( )

 A . ALTRE

 B . UPDATE

 C . SELECT

 D . DELETE

答案: C

52 .在 MySQL 中,建立数据库用 ( )

 A . CREATE TABLE 命令

 B . CREATE TRIGGER 命令

 C . CREATE INDEX 命令

 D . CREATE DATABASE 命令

答案: D

53 . MySQL 中,预设的、拥有最高权限超级用户的用户名为 ( )

 A . test

 B . Administrator

 C . DA

 D . root

答案: D

54 .以下插入记录正确的 ( )

 A . insert into emp(ename,hiredate,sal) values (value1,value2,value3);

 B . insert into emp (ename,sal)values(value1,value2,value3);

 C . insert into emp (ename)values(value1,value2,value3);

 D . insert into emp (ename,hiredate,sal)values(value1,value2);

答案: A

55 .在 SQL 语言中的视图 VIEW 是数据库的 ( )

 A .外模式

 B .存储模式

 C .模式

 D .内模式

答案: A

56 .以下哪项用来排序 ( )

 A . ORDERED BY

 B . ORDER BY

 C . GROUP BY

 D . GROUPED BY

答案: B

57 .以下聚合函数求个数的是 ( )

 A . AVG

 B . SUM

 C . MAX

 D . COUNT

答案: D

58 .在 select 语句中,实现选择操作的子句是 ( )

 A . select

 B . group by

 C . where

 D . from

答案: C

59 .查找数据库中所有的数据表用以下哪一项 ( )

 A . SHOW DATABASE

 B . SHOW TABLES

 C . SHOW DATABASES

 D . SHOW TABLE

答案: B

60 .触发器不是响应以下哪一语句而自动执行的 Mysql 语句

 A . select

 B . insert

 C . delete

 D . update

答案: A

61 . ( ) 表示一个新的事务处理块的开始

 A . START TRANSACTION

 B . BEGIN TRANSACTION

 C . BEGIN COMMIT

 D . START COMMIT

答案: A

62 .以下语句不正确的是 ( )

 A . select * from emp;

 B . select ename,hiredate,sal from emp;

 C . select * from emp order deptno;

 D . select * from where deptno=1 and sal<300;

答案: C

63 . delete from employee 语句的作用是 ( )

 A .删除当前数据库中整个 employee 表,包括表结构

 B .删除当前数据库中 employee 表内的所有行

 C .由于没有 where 子句,因此不删除任何数据

 D .删除当前数据库中 employee 表内的当前行

答案: B

64 .按照班级进行分组 ( )

 A . ORDER BY CLASSES

 B . DORDER CLASSES

 C . GROUP BY CLASSES

 D . GROUP CLASSES

答案: C

65 .格式化日期的函数是 ( )

 A . DATEDIFF()

 B . DATE_FORMAT()

 C . DAY()

 D . CURDATE()

答案: B

66 .例如数据库中有 A 表,包括学生,学科,成绩,序号四个字段  ,  数据库结构为

学生学科成绩序号

张三语文  60 1

张三数学  100 2

李四语文  70 3

李四数学  80 4

李四英语  80 5

上述哪一列可作为主键列 ( )

 A .序号

 B .成绩

 C .学科

 D .学生

答案: A

67 .学生关系模式  S (  S #, Sname , Sex , Age ), S 的属性分别表示学生的学号、姓名、性别、年龄。要在表 S 中删除一个属性“年龄”,可选用的 SQL 语句是()。

 A .  UPDATE S Age

 B . DELETE Age from S

 C . ALTER TABLE S  ‘ Age ’

 D .  ALTER TABLE S DROP Age

答案: D

68 .以下哪项用于左连接 ( )

 A . JOIN

 B . RIGHT JOIN

 C . LEFT JOIN

 D . INNER JOIN

答案: C

69 .一张表的主键个数为 ( )

 A .至多 3 个

 B .没有限制

 C .至多 1 个

 D .至多 2 个

答案: C

70 . SQL 语言是 ( ) 的语言,轻易学习。

 A .导航式

 B .过程化

 C .格式化

 D .非过程化

答案: D

71 .在正则表达式中,匹配任意一个字符的符号是 ( )

 A . .

 B . *

 C . ?

 D . -

答案: A

72 .条件“ BETWEEN 20 AND 30 ”表示年龄在 20 到 30 之间,且 ( )

 A .包括 20 岁不包括 30 岁

 B .不包括 20 岁包括 30 岁

 C .不包括 20 岁和 30 岁

 D .包括 20 岁和 30 岁

答案: D

73 .以下表示可变长度字符串的数据类型是 ( )

 A . TEXT

 B . CHAR

 C . VARCHAR

 D . EMUM

答案: C

74 .以下说法错误的是 ( )

 A . SELECT max(sal),deptno,job FROM EMP group by sal;

 B . SELECT max(sal),deptno,job FROM EMP group by deptno;

 C . SELECT max(sal),deptno,job FROM EMP;

 D . SELECT max(sal),deptno,job FROM EMP group by job;

答案: C

75 .以下匹配 '1 ton' 和 '2 ton' 及 '3 ton' 的正则表达式是 ( )

 A . '123 ton'

 B . '1,2,3 ton'

 C . '[123] ton'

 D . '1|2|3 ton'

答案: C

76 .拼接字段的函数是 ( )

 A . SUBSTRING()

 B . TRIM()

 C . SUM ()

 D . CONCAT()

答案: D

77 .以下删除表正确的 ( )

 A . Delete * from emp

 B . Drop database emp

 C . Drop * from emp

 D . delete database emp

答案: B

78 .下列说法错误的是 ( )

 A . GROUP BY  子句用来分组  WHERE  子句的输出

 B . WHERE  子句用来筛选  FROM  子句中指定的操作所产生的行。

 C .聚合函数需要和 group by  一起使用

 D . HAVING  子句用来从 FROM 的结果中筛选行

答案: D

79 .条件年龄 BETWEEN 15 AND 35 表示年龄在 15 至 35 之间,且 ( )

 A .不包括 15 岁和 35 岁

 B .包括 15 岁但不包括 35 岁

 C .包括 15 岁和 35 岁

 D .包括 35 岁但不包括 15 岁

答案: C

80 .创建视图的命令是 ( )

 A . alter view

 B . alter table

 C . create table

 D . create view

答案: D

81 .存储过程是一组预先定义并 ( ) 的 Transact-SQL 语句

 A .保存

 B .编写

 C .编译

 D .解释

答案: C

82 .返回字符串长度的函数是 ( )

 A . len()

 B . length()

 C . left()

 D . long()

答案: B

83 .从数据表中查找记录用以下哪一项 ( )

 A . UPDATE

 B . FIND

 C . SELECT

 D . CREATE

答案: C

84 . SQL 语言集数据查询、数据操纵、数据定义和数据控制功能于一体,其中, CREATE 、 DROP 、 ALTER 语句是实现哪种功能 ( )

 A .数据操纵

 B .数据控制

 C .数据定义

 D .数据查询

答案: C

85 .以下哪项不属于 DML 操作 ( )

 A . insert

 B . update

 C . delete

 D . create

答案: D

86 .按照姓名升序序排列 ( )

 A . ORDER BY NAME ASC

 B . ORDER BY ASC NAME

 C . ORDER BY NAME DESC

 D . ORDER BY DESC NAME

答案: A

87 .有关系 S ( S #, SNAME , SAGE ), C ( C #, CNAME ), SC ( S #, C #, GRADE )。其中 S #是学生号, SNAME 是学生姓名, SAGE 是学生年龄,  C #是课程号, CNAME 是课程名称。要查询选修“ ACCESS ”课的年龄不小于 20 的全体学生姓名的 SQL 语句是 SELECT SNAME FROM S , C , SC WHERE 子句。这里的 WHERE 子句的内容是()。

 A . SAGE>=20 and CNAME= ’  ACCESS ’

 B . S.S# = SC.S# and C.C# = SC.C# and SAGE in>=20 and CNAME in  ‘ ACCESS ’

 C . SAGE in>=20 and CNAME in  ‘ ACCESS ’

 D . S.S# = SC.S# and C.C# = SC.C# and SAGE>=20 and CNAME= ‘ ACCESS ’

答案: D

88 .以下哪项属于 DDL 操作 ( )

 A . update

 B . create

 C .  insert

 D . delete

答案: B

89 .查找条件为:姓名为 NULL 的记录 ( )

 A . WHERE NAME NULL

 B . \WHERE NAME IS NULL

 C . WHERE NAME=NULL

 D . \WHERE NAME ==NULL

答案: B

90 .条件“ IN(20,30,40) ”表示 ( )

 A .年龄在 20 到 40 之间

 B .年龄在 20 到 30 之间

 C .年龄是 20 或 30 或 40

 D .年龄在 30 到 40 之间

答案: C

91 .正则表达式的转义符是 ( )

 A . \\

 B . \

 C . ;

 D . $$

答案: A

92 .更新数据表中的记录用以下哪一项 ( )

 A . DELETE

 B . ALTRE

 C . UPDATE

 D . SELECT

答案: C

93 .关系数据库中,主键是 ( )

 A .创建唯一的索引,允许空值

 B .只允许以表中第一字段建立

 C .允许有多个主键的

 D .为标识表中唯一的实体

答案: D

94 .使用 SELECT 语句随机地从表中挑出指定数量的行,可以使用的方法是 ( )

 A .在 LIMIT 子句中使用 RAND() 函数指定行数,并用 ORDER BY 子句定义一个排序规则

 B .只要使用 LIMIT 子句定义指定的行数即可,不使用 ORDER BY 子句

 C .只要在 ORDER BY 子句中使用 RAND() 函数,不使用 LIMIT 子句

 D .在 ORDER BY 子句中使用 RAND() 函数,并用 LIMIT 子句定义行数

答案: D

95 .进入要操作的数据库 TEST 用以下哪一项 ( )

 A . IN TEST

 B . SHOW TEST

 C . USER TEST

 D . USE TEST

答案: D

96 .例如数据库中有 A 表,包括学生,学科,成绩三个字段  ,  数据库结构为

学生学科成绩

张三语文  80

张三数学  100

李四语文  70

李四数学  80

李四英语  80

如何统计每个学科的最高分 ( )

 A . select  学生 ,max( 成绩 ) from A group by  学生 ;

 B . select  学生 ,max( 成绩 ) from A group by 学科 ;

 C . select  学生 ,max( 成绩 ) from A order by 学生 ;

 D . select  学生 ,max( 成绩 ) from A group by  成绩 ;

答案: B

97 .下列哪些语句对主键的说明正确 ( )

 A .主键可重复

 B .主键不唯一

 C .在数据表中的唯一索引

 D .主键用 foreign key 修饰

答案: C

98 .数据库服务器、数据库和表的关系,正确的说法是 ( )

 A .一个数据库服务器只能管理一个数据库,一个数据库只能包含一个表

 B .一个数据库服务器可以管理多个数据库,一个数据库可以包含多个表

 C .一个数据库服务器只能管理一个数据库,一个数据库可以包含多个表

 D .一个数据库服务器可以管理多个数据库,一个数据库只能包含一个表

答案: B

99 .例如数据库中有 A 表,包括学生,学科,成绩三个字段  ,  数据库结构为

学生学科成绩

张三语文  60

张三数学  100

李四语文  70

李四数学  80

李四英语  80

如何统计最高分 >80 的学科 ( )

 A . SELECT MAX( 成绩 ) FROM A GROUP BY 学科  HAVING MAX( 成绩 )>80;

 B . SELECT 学科  FROM A GROUP BY 学科  HAVING 成绩 >80;

 C . SELECT 学科  FROM A GROUP BY 学科  HAVING MAX( 成绩 )>80;

 D . SELECT 学科  FROM A GROUP BY 学科  WHERE MAX( 成绩 )>80;

答案: C

100 .统计每个部门中人数 ( )

 A . SELECT SUM(ID) FROM EMP GROUP BY DEPTNO;

 B . SELECT SUM(ID) FROM EMP ORDER BY DEPTNO;

 C . SELECT COUNT(ID) FROM EMP ORDER BY DEPTNO;

 D . SELECT COUNT(ID) FROM EMP GROUP BY DEPTNO;

答案: D

101 . DECIMAL 是 ( ) 数据类型

 A .可变精度浮点值

 B .整数值

 C .双精度浮点值

 D .单精度浮点值

答案: A

102 .视图是一种常用的数据对象,它是提供 ( ) 和 ( ) 数据的另一种途径,可以简化数据库操作

 A .插入,更新

 B .查看,检索

 C .查看,存放

 D .检索,插入

答案: C

103 .删除数据表中的一条记录用以下哪一项 ( )

 A . DELETED

 B . DELETE

 C . DROP

 D . UPDATE

答案: B

二、多项选择题

1 .触发器是响应以下任意语句而自动执行的一条或一组 MYSQL 语句 ( )

 A . UPDATE

 B . INSERT

 C . SELECT

 D . DELETE

答案: B,A,D

2 .对于删除操作以下说法正确的是()

 A . drop database  数据库名:删除数据库

 B . delete from  表名;删除表中所有记录条

 C . delete from  表名  where  字段名 = 值;删除符合条件的记录条

 D . drop table  表名;删除表

答案: B,C,D,A

3 .下面正确的说法是 ( )

 A .关键字只能由单个的属性组成

 B .在一个关系中,关键字的值不能为空

 C .一个关系中的所有候选关键字均可以被指定为主关键字

 D .关键字是关系中能够用来惟一标识元组的属性

答案: D,B,C

4 .以下说法正确的是 ( )

 A .字符型既可用单引号也可用双引号将串值括起来

 B .字符型的 87398143 不参与计算的

 C . 87398143  不能声明为数值型

 D .数值型的 87398143 将参与计算

答案: A,D,B

5 .关于主键下列说法正确的是()

 A .可以是表中的一个字段,

 B .是确定数据库中的表的记录的唯一标识字段,

 C .该字段不可为空也不可以重复

 D .可以是表中的多个字段组成的。

答案: B,A,D,C

6 . mySQL 支持哪些逻辑运算符

 A . &&

 B . ||

 C . NOT

 D . AND

答案: D,C

7 .以下不属于浮点型的是()

 A . smallint

 B . mediumint

 C . float

 D . int

答案: A,B,D

8 .下列正确的命令是 ( )

 A . show tables;

 B . show columns;

 C . show columns from customers;

 D . show databases;

答案: D,A,C

9 .正则表达式中,重复元字符“ * ”表示 ( )

 A .无匹配

 B .只匹配 1 个

 C . 0 个匹配

 D .多个匹配

答案: C,D

10 .下面对  union  的描述正确的是 ( )

 A . union  只连接结果集完全一样的查询语句

 B . union  可以连接结果集中数据类型个数相同的多个结果集

 C . union  是筛选关键词,对结果集再进行操作

 D .任何查询语句都可以用  union  来连接

答案: D,A,C

11 .下列哪一个逻辑运算符的优先级排列不正确 ( )

 A . AND/NOT/OR

 B . NOT/AND/OR

 C . OR/NOT /AND

 D . OR/AND/NOT

答案: A,C,D

12 .对某个数据库进行筛选后  , ( ) 。

 A .  B )可以选出符合某些条件组合的记录

 B . D )不能选择出符合条件组合的记录

 C . A )可以选出符合某些条件的记录

 D . C )只能选择出符合某一条件的记录

答案: C,A

13 .下列语句错误的是 ( )

 A . select * from orders where ordername is not null;

 B . select * from orders where ordername<>null;

 C . select * from orders where ordername is null;

 D . select * from orders where ordername not is null;

答案: D,B

14 .在下列关于关系的叙述中,正确的是 ( )

 A . C )行在表中的顺序无关紧要

 B .  A )表中任意两行的值不能相同

 C .  D )列在表中的顺序无关紧要

 D . B )表中任意两列的值不能相同

答案: B,A,C

15 .下面系统中属于关系数据库管理系统的是 ( )

 A .  B ) MS_SQL SERVER

 B . A ) Oracle

 C .  C ) IMS

 D .  D ) DB2

答案: B,A,C

16 .下列是 MYSQL 比较运算符的是 ( )

 A . !=

 B . <>

 C . ==

 D . >=

答案: D,B,A

17 . Excel  中有关数据库内容  ,  描述正确的有 ( ) 。

 A .每一个  Excel  数据库对应一个工作簿文件

 B .一列为一个字段  ,  描述实体对象的属性

 C . Excel  数据库属于“关系数据模型” ,  又称为关系型数据库

 D .一行为一个记录  ,  描述某个实体对象

答案: D,B,C

18 .下面关于使用 UPDATE 语句,正确的是 ( )

 A .被定义为 NOT NULL 的列不可以被更新为 NULL

 B .不能在一个子查询中更新一个表,同时从同一个表中选择

 C .不能把 ORDER BY 或 LIMIT 与多表语法的 UPDATE 语句同时使用

 D .如果把一列设置为其当前含有的值,则该列不会更新

答案: D,C,B

19 .关于 Excel  数据库应用的描述正确的有 ( ) 。

 A .是一个数据清单

 B .是按一定组织方式存储在一起的相关数据的集合

 C .是一个数组

 D .是程序化的电子表格

答案: B,A

20 .关于 DELETE 和 TRUNCATE TABLE 的说法,正确的是 ( )

 A .两者都可以删除指定条目的记录

 B .前者可以删除指定条目的记录,后者不能

 C .两者都反回被删除记录的数目

 D .前者返回被删除记录数目,后者不返回

答案: B,D

21 .关于游标,下列说法正确的是 ( )

 A .声明后必须打开游标以供使用

 B .结束游标使用时,必须闭游标

 C .使用游标前必须声明它

 D .游标只能用于存储过程和函数

答案: D,C,A,B

22 .下列说法正确的是 ( )

 A .在 MySQL 中,不允许有空表存在,即一张数据表中不允许没有字段。

 B .在 MySQL 中,对于存放在服务器上的数据库,用户可以通过任何客户端进行访问。

 C .数据表的结构中包含字段名、类型、长度、记录。

 D .字符型数据其常量标志是单引号和双引号,且两种符号可以混用。

答案: B,A

23 .下面数据库名称合法的是 ( )

 A . db1/student

 B . db1.student

 C . db1_student

 D . db1&student

答案: D,C

24 .下面语句中,表示过虑条件是 vend_id=1002 或 vend_id=1003 的是 ( )

 A . select * from products where vend_id=1002 or vend_id=1003

 B . select * from products where vend_id in (1002,1003);

 C . select * from products where vend_id not in (1004,1005);

 D . select * from products where vend_id=1002 and vend_id=1003

答案: B,A

25 .下列哪些列类型是数值型的数据 ( ) 。

 A . DOUBLE

 B . INT

 C . SET

 D . FLOAT

答案: B,A,D

26 .以下否定语句搭配正确的是()

 A . not in

 B . in not

 C . not between and

 D . is not null

答案: C,A,D

27 .下面检索结果一定不是一行的命令是 ( )

 A . select distinct * from orders ;

 B . select * from orders limit 1,2;

 C . select top 1 * from orders;

 D . select * from orders limit 1;

答案: C,A,B

28 .以下哪些是 mySQL 数据类型()

 A . BIGINT

 B . TINYINT

 C . INTEGER

 D . INT

答案: D,C,A,B

29 .关于 group by  以下语句正确的是 ( )

 A . SELECT store_name FROM Store_Information GROUP BY store_name

 B .  SELECT SUM(sales)   FROM Store_Information GROUP BY sales

 C . SELECT store_name, price SUM(sales)   FROM Store_Information GROUP BY store_name , price

 D . SELECT store_name, SUM(sales)   FROM Store_Information GROUP BY store_name

答案: D,C,B

30 .在数据库系统中,有哪几种数据模型? ( )

 A .  D )实体联系模型

 B .  C )关系模型

 C .  A )网状模型

 D .  B )层次模型

答案: C,D,B

31 .关于 CREATE 语句下列说法正确的是()

 A . create table  表名 ( 字段名 1  字段类型 , 字段名 2  字段类型 ,.....)

 B .  create tables  表名 ( 字段类型 , 字段名 1  字段类型 , 字段名 2.....)

 C . create tables  表名 ( 字段名 1  字段类型 , 字段名 2  字段类型 ,.....)

 D .  create table  表名 ( 字段类型 , 字段名 1  字段类型 , 字段名 2.....)

答案: A,D

32 .以下说法正确的是 ( )

 A .一个服务器只能有一个数据库

 B .一个服务器可以有多个数据库

 C .一个数据库只能建立一张数据表

 D .一个数据库可以建立多张数据表

答案: B,D

33 .下列说法正确的是 ( )

 A .一张数据表一旦建立完成,是不能修改的。

 B .在 MySQL 中,用户在单机上操作的数据就存放在单机中。

 C .在 MySQL 中,可以建立多个数据库,但也可以通过限定,使用户只能建立一个数据库。

 D .要建立一张数据表,必须先建数据表的结构。

答案: C,B,D

34 .“ show databases like  ‘ student% ’”命令可以显示出以下数据库 ( )

 A . student_my

 B . studenty

 C . mystudent

 D . student

答案: D,A,B

35 .下面的选项是关系数据库基本特征的是()。

 A .与列的次序无关

 B .不同的列应有不同的数据类型

 C .不同的列应有不同的列名

 D .与行的次序无关

答案: C,D,A

36 .在 mysql 提示符下,输入 ____ 命令,可以查看由 mysql 自己解释的命令 ( )

 A . \?

 B . ?

 C . help

 D . \h

答案: C,D,B

37 .下列哪些数据是字符型数据。 ( )

 A .中国

 B .“ 1+2 ”

 C .” can ’ t ”

 D .”张三-李四”

答案: B,D,C

38 .关于语句 limit 5,5 ,说法正确的是

 A .表示检索出第 5 行开始的 5 条记录

 B .表示检索出行 6 开始的 5 条记录

 C .表示检索出第 6 行开始的 5 条记录

 D .表示检索出行 5 开始的 5 条记录

答案: C,D

39 . SQL 语言集几个功能模块为一体,其中包括()

 A . C. DCL

 B .  B. DML

 C .  D. DNL

 D . A. DDL

答案: D,B,A

40 .下列说法正确的是()

 A . alter table user drop column sex;

 B . alter table user add sex varchar(20);

 C . alter table user drop sex;

 D . alter table user modify id int primary key;

答案: D,B,A,C

41 .视图一般不用于下列哪些语句 ( )

 A . DELETE

 B . SELECT

 C . INSERT

 D . UPDATE

答案: C,D,A

42 .在算术运算符、比较运算符、逻辑运算符,这三种符号中,它们的优先级排列不正确的是 ( )

 A .算术 / 逻辑 / 比较

 B .比较 / 逻辑 / 算术

 C .比较 / 算术 / 逻辑

 D .算术 / 比较 / 逻辑

答案: A,C,B

43 .对同一存储过程连续两次执行命令 DROP PROCEDURE IF EXISTS ,将会 ( )

 A .第一次执行删除存储过程,第二次产生一个错误

 B .第一次执行删除存储过程,第二次无提示

 C .存储过程不能被删除

 D .最终删除存储过程

答案: B,D

44 .关于检索结果排序,正确的是 ( )

 A .关键字 DESC 表示降序, ASC 表示升序

 B .如果指定多列排序,只能在最后一列使用升序或降序关键字

 C .如果指定多列排序,可以在任意列使用升序或降序关键字

 D .关键字 ASC 表示降序, DESC 表示升序

答案: A,C

45 .以下语句错误的是()

 ;

   SELECT rank, AVG(salary) FROM people HAVING AVG(salary) > 1000 GROUP BY rank;

 

 A . SELECT rank, AVG(salary) FROM people GROUP BY rank HAVING AVG(salary) > 1000

 B . SELECT rank, AVG(salary) FROM people HAVING AVG(salary) > 1000 GROUP BY rank;

 C . SELECT AVG(salary) FROM people GROUP BY rank HAVING AVG(salary) > 1000;

 D . SELECT rank, AVG(salary) FROM people GROUP BY rank WHERE AVG(salary) > 1000;

答案: D,B

46 .创建数据表时,下列哪些列类型的宽度是可以省略的。  ( )

 A . DATE

 B . INT

 C . CHAR

 D . TEXT

答案: B,D,A

47 .关于主键下列说法正确的是()

 A .主键的值对用户而言是没有什么意义

 B .主键的主要作用是将记录和存放在其他表中的数据进行关联。

 C .一个主键是唯一识别一个表的每一记录,

 D .主键是不同表中各记录之间的简单指针。

答案: C,B,D,A

48 .您需要显示从 2009 年 1 月 1 日到 2009 年 12 月 31 日雇佣的所有职员的姓名和雇佣日期。职员信息表 tblEmployees 包含列 Name 和列 HireDate ,下面哪些语句能完成该功能  ( )

 A . SELECT Name, HireDate FROM tblEmployees

 B . SELECT Name, HireDate FROM tblEmployees WHERE HireDate = ’ 2009-01-01 ’  OR  ‘ 2009-12-31 ’

 C . SELECT Name, HireDate FROM tblEmployees WHERE HireDate BETWEEN  ’ 2008-12-31 ’  AND  ‘ 2010-01-01 ’

 D . SELECT Name, HireDate FROM tblEmployees WHERE substring(HireDate,1,4)=2009;

答案: C,D

49 .以下哪项是事务特性 ( )

 A .独立性

 B .持久性

 C .原子性

 D .一致性

答案: C,D,A,B

50 .对于显示操作以下说法正确的是()

 A . show database ;显示所有数据库

 B . show table ;显示所有表

 C . show tables ;显示所有表

 D . show databases ;显示所有数据库

答案: D,B

51 .语句 select * from products where prod_name like '%se%' 结果集包括 ( )

 A .检索 products 表中 prod_name 字段以 'se' 结尾的数据

 B .检索 products 表中 prod_name 字段以 'se' 开关的数据

 C .检索 products 表中 prod_name 字段包含 'se' 的数据

 D .检索 products 表中 prod_name 字段不包含 'se' 的数据

答案: C,B,A

52 .在 mysql 提示符下可以输入一个 SQL 语句,并以 ( ) 结尾,然后按回车执行该语句 ( )

 A .“ \G ”

 B .“。”

 C .“ \g ”

 D .“ ; ”

答案: D,C,A

53 .关于 insert 语句下列说法正确的是()

 A . insert into  表名 values( 字段名 1 对应的值 );

 B . insert into  表名  values( 字段名 1 对应的值,字段名 2 对应值 );

 C . insert into  表名 ( 字段名 1) value ( 字段名 1 对应的值 );

 D .  insert into  表名 ( 字段名 1 ,字段名 2) values( 字段名 1 对应的值,字段名 2 对应值 );

答案: D,B

54 .  23  关系数据模型哪些优点? ( )

 A . A )结构简单

 B .  C )有标准语言

 C .  B )适用于集合操作

 D .  D )可表示复杂的语义

答案: A,C,B

55 .对某个数据库使用记录单  ,  可以进行的记录操作有 ( )

 A .删除

 B .新建

 C .还原

 D .插入

答案: B,A,C

56 .关于 select 语句下列说法正确的是()

 A .  select (name) from table person:  所有记录的 name 字段的值

 B . select (name) from person where age=12 or name="aa"; or  或者

 C .  select (name) from table person where age=12;  查找 age=12 的记录的那个字段的值

 D .  select (name , age) from person where age=12 and name="aa"; and  并且

答案: B,D

57 .在字符串比较中,下列哪些是不正确的 ( )

 A .所有标点符号比数字大

 B .所有数字都比汉字大

 C .所有英文比数字小

 D .所有英文字母都比汉字小

答案: B,C,A

58 .数据库信息的运行安全采取的主措施有 ( ) 。

 A .备份与恢复

 B .应急

 C .风险分析

 D .审计跟踪

答案: C,D,A,B

三、填空题

1 . select 9/3; 的结果为 _____ 。

答案: 3.0000

2 .补全语句 :select vend_id,count(*) as num_prods from products group by ____;

答案: vend_id

3 .用 SELECT 进行模糊查询时,可以使用匹配符,但要在条件值中使用 ____ 或 % 等通配符来配合查询。

答案: -

4 .当所查询的表不在当前数据库时,可用 ___________________________ 格式来指出表或视图对象

答案:数据库 . 所有者名称 . 对象名称

5 .语句 SELECT  “ 1+2 ”;的显示结果是____

答案:“ 1+2 ”

6 .如果 MySQL 服务名为 MySQL5 ,则在 Windows 的命令窗口中,启动 MySQL 服务的指令是 ____

答案: net start mysql5

7 . MySQL 是一种______(多用户、单用户)的数据库管理系统

答案:多用户

8 . select  ‘ 2.5a ’ +3; 的结果为 _____ 。 

答案: 5.5

9 . select (NULL<=>NULL) is NULL; 的结果为 _____ 。 

答案: 0

10 .创建数据表的命令语句是_________

答案: create table

11 . ____ 语句可以修改表中各列的先后顺序

答案: ALTER TABLE

12 .当某字段要使用 AUTO _ INCREMENT 的属性时,该字段必须是____类型的数据。

答案: INT

13 .当某字段要使用 AUTO _ INCREMENT 的属性时,除了该字段必须是指定的类型外,该字段还必须是____

答案:关键字段或索引字段

14 .在 SELECT 语句的 FROM 子句中最多可以指定 _______ 个表或视图

答案: 256

15 . ODBC 是一种 ____________

答案:开放式数据库连接

16 .在 SELECT 语句的 FROM 子句中可以指定多个表或视图,相互之间要用 ________ 分隔

答案:逗号

17 . Table 'a1' already exists 这个错误信息的含义是_____

答案:表 a1 已经存在

18 .对一个超过 200 个汉字的内容,应用一个____型的字段来存放

答案: text

19 .在 INSERT 触发器中,可以引用一个名为 ____ 的虚拟表,访问被插入的行

答案: NEW

20 .语句 SELECT  “张三 \n 李四”的显示结果是_____

答案:”张三 \n 李四”

21 . smallint 数据类型占用的字节数分别为   

答案: 1

22 .在 DELETE 触发器中,可以引用一个名为 ____ 的虚拟表,访问被删除的行

答案: OLD

23 .察看当前数据库中表名语句是 _____ 。 

答案: show tables

24 .删除表命令是: ___________________________________________ 。 

答案: drop table

25 . select 'Abc'='abc'; 的结果为 _____ 。

答案:  1

26 . select -2.0*4.0; 的结果为 _____ 。 

答案: -8.00

27 . tinyint 数据类型占用的字节数为 ___

答案: 2

28 .补全语句: select vend_id,count(*) from products where prod_price>=10 group by vend_id ____ count(*)>=2;

答案: having

29 .计算字段的累加和的函数是: _______

答案: sum()

30 .用 SELECT 进行模糊查询时,可以使用 ________ 匹配符

答案: like

四、判断题

1 . ( ) 主键被强制定义成 NOT NULL 和 UNIQUE 。

答案: Y

2 . ( )select 语句的过滤条件既可以放在 where 子句中,也可以放在 from 子句中。

答案: N

3 . ( ) 逻辑值的“真”和“假”可以用逻辑常量 TRUE 和 FALSE 表示。

答案: Y

4 . ( ) 如果在排序和分组的对象上建立了索引,可以极大地提高速度。

答案: Y

5 . ( ) 建立索引的目的在于加快查询速度以及约束输入的数据。

答案: Y

6 . ( )UPDATE 语句可以有 WHERE 子句和 LIMIT 子句。

答案: Y

7 . ( )x between y and z 等同于 x>y && x

答案: N

8 . ( )MySQL 数据库管理系统只能在 Windows 操作系统下运行。

答案: N

9 . ( ) 对于字符串型数据,空字符串’’就是 NULL ,对于数值型数据 0 就是 NULL 。

答案: N

10 . ( )LTRIM 、 RTRIM 、 TRIM 函数既能去除半角空格,又能去除全角空格。

答案: N

11 . ( )NULL 和 Null 都代表空值。

答案: Y

12 . ( ) 关系型数据库管理系统简称为 RDBMS 。

答案: Y

13 . ( ) 用 union 上下连接的各个 select 都可以带有自己的 order by 子句。

答案: N

14 . ( )ALTER TABLE 语句可以修改表中各列的先后顺序。

答案: Y

15 . ( )!= 和 <> 都代表不等于。

答案: Y

16 . ( ) 所创建的数据库和表的名字,都可以使用中文。

答案: Y

17 . ( )SELECT 语句的 ORDER BY 子句定义的排序表达式所参照的列甚至可以不出现在输出列表中。

答案: Y

18 . ( ) 在 C/S 模式中,客户端不能和服务器端安装在同一台机器上。

答案: N

19 . ( )UPDATE 语句修改的是表中数据行中的数据,也可以修改表的结构。

答案: N

20 . ( )create table  语句中有定义主键的选项。

答案: Y

21 . ( ) 结构化查询语言只涉及查询数据的语句,并不包括修改和删除数据的语句。

答案: N

22 . ( ) 一句 delete 语句能删除多行。

答案: Y

23 . ( ) 字符串“ 2008-8-15 ”和整数 20080815 都可以代表 2008 年 8 月 15 日。

答案: Y

24 . ( )INSERT 语句所插入的数据行数据可以来自另外一个 SELECT 语句的结果集。

答案: Y

25 . ( ) 所有 TIMESTAMP 列在插入 NULL 值时,自动填充为当前日期和时间。

答案: Y

26 . ( ) 带有 GROUP BY 子句的 SELECT 语句,结果集中每一个组只用一行数据来表示。

答案: Y

27 . ( )UNION 中 ALL 关键字的作用是在结果集中所有行全部列出,不管是否有重复行。

答案: Y

28 . ( ) 为了让 MySQL 较好地支持中文,在安装 MySQL 时,应该将数据库服务器的缺省字符集设定为 gb2312 。

答案: N

29 . ( ) 只能将表中的一个列定义为主键,不能将多个列定义为复合的主键。

答案: N

30 . ( ) 当一个表中所有行都被 delete 语句删除后,该表也同时被删除了。

答案: N

五、简答题

1 .什么是数据库镜像?它有什么用途?

答案:

答:

数据库镜像即根据 DBA 的要求,自动把整个数据库或者其中的部分关键数据复制到另一个磁盘上。每当主数据库更新时, DBMS 自动把更新后的数据复制过去,即 DBMS 自动保证镜像数据与主数据的一致性。

数据库镜像的用途有:

一是用于数据库恢复。当出现介质故障时,可由镜像磁盘继续提供使用,同时 DBMS 自动利用镜像磁盘数据进行数据库的恢复,不需要关闭系统和重装数据库副本。

二是提高数据库的可用性。在没有出现故障时,当一个用户对某个数据加排它锁进行修改时,其他用户可以读镜像数据库上的数据,而不必等待该用户释放锁。

2 .为什么事务非正常结束时会影响数据库数据的正确性

答案:答:

事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。如果数据库系统运行中发生故障,有些事务尚未完成就被迫中断,这些未完成事务对数据库所做的修改有一部分已写入物理数据库,这时数据库就处于一种不正确的状态,或者说是不一致的状态。

3 .什么是物理设计:

答案:对一个给定的逻辑数据模型选取一个最适合应用环境的物理结构的过程,称为数据库的物理设计。物理结构,主要指数据库在物理设备上的存储结构和存取方法。

4 .什么是日志文件?为什么要设立日志文件?

答案:答:

( 1 )日志文件是用来记录事务对数据库的更新操作的文件。

( 2 )设立日志文件的目的是:进行事务故障恢复;进行系统故障恢复;协助后备副本进行介质故障恢复。

5 .在数据库系统生存期中,生存期的总开销可分为几项:

答案:规划开销、设计开销、实现与测试开销、操作开销、维护开销。

6 .数据库中为什么要有恢复子系统?它的功能是什么?

答案:答:

因为计算机系统中硬件的故障、软件的错误、操作员的失误以及恶意的破坏是不可避免的,这些故障轻则造成运行事务非正常中断,影响数据库中数据的正确性,重则破坏数据库,使数据库中全部或部分数据丢失,因此必须要有恢复子系统。

恢复子系统的功能是:把数据库从错误状态恢复到某一已知的正确状态(亦称为一致状态或完整状态)。

7 .数据库运行中可能产生的故障有哪几类?哪些故障影响事务的正常执行?哪些故障破坏数据库数据?

答案:答:数据库系统中可能发生各种各样的故障,大致可以分以下几类:

( 1 )事务内部的故障;

( 2 )系统故障;

( 3 )介质故障;

( 4 )计算机病毒。

事务故障、系统故障和介质故障影响事务的正常执行;介质故障和计算机病毒破坏数据库数据。

8 .登记日志文件时为什么必须先写日志文件,后写数据库?

答案:答:

把对数据的修改写到数据库中和把表示这个修改的日志记录写到日志文件中是两个不同的操作。有可能在这两个操作之间发生故障,即这两个写操作只完成了一个。

如果先写了数据库修改,而在运行记录中没有登记这个修改,则以后就无法恢复这个修改了。如果先写日志,但没有修改数据库,在恢复时只不过是多执行一次 UNDO 操作,并不会影响数据库的正确性。所以一定要先写日志文件,即首先把日志记录写到日志文件中,然后写数据库的修改。

9 .数据库转储的意义是什么?

答案:

答:

数据转储是数据库恢复中采用的基本技术。所谓转储即 DBA 定期地将数据库复制到磁带或另一个磁盘上保存起来的过程。当数据库遭到破坏后可以将后备副本重新装入,将数据库恢复到转储时的状态。

静态转储:在系统中无运行事务时进行的转储操作。静态转储简单,但必须等待正运行的用户事务结束才能进行。同样,新的事务必须等待转储结束才能执行。显然,这会降低数据库的可用性。

动态转储:指转储期间允许对数据库进行存取或修改。动态转储可克服静态转储的缺点,它不用等待正在运行的用户事务结束,也不会影响新事务的运行。但是,转储结束时后援副本上的数据并不能保证正确有效。因为转储期间运行的事务可能修改了某些数据,使得后援副本上的数据不是数据库的一致版本。

为此,必须把转储期间各事务对数据库的修改活动登记下来,建立日志文件( log file )。这样,后援副本加上日志文件就能得到数据库某一时刻的正确状态。

转储还可以分为海量转储和增量转储两种方式。

海量转储是指每次转储全部数据库。增量转储则指每次只转储上一次转储后更新过的数据。从恢复角度看,使用海量转储得到的后备副本进行恢复一般说来更简单些。但如果数据库很大,事务处理又十分频繁,则增量转储方式更实用更有效。

10 .试述事务的概念及事务的四个特性。

答案:答:

事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做 , 是一个不可分割的工作单位。

事务具有四个特性:原子性、一致性、隔离性)和持续性。

11 .数据库恢复的基本技术有哪些?

答案:答:

数据转储和登录日志文件是数据库恢复的基本技术。

当系统运行过程中发生故障,利用转储的数据库后备副本和日志文件就可以将数据库恢复到故障前的某个一致性状态。

12 .数据库设计中的规划阶段的主要任务:

答案:是进行建立数据库的必要性及可行性分析,确定数据库系统在组织中和信息系统中的地位,以及各个数据库之间的联系。

六、编程题

1 .表名 User

Name Tel Content Date

张三  133********  大专毕业  2006-10-11

张三  136********  本科毕业  2006-10-15

张四  021-********  中专毕业  2006-10-15

(a)  有一新记录 ( 小王  132********  高中毕业  2007-05-06) 请用 SQL 语句新增至表中

(b)  请用 sql 语句把张三的时间更新成为当前系统时间

(c)  请写出删除名为张四的全部记录

答案: (a) insert into user values(' 小王 ','132********',' 高中毕业 ','2007-05-06');

(b) update user set date=time() where name=' 张三 ';

(c) delete from user where name=' 张四 ';

2 .当前数据库是 testdb ,在该数据库中,有 students 、 scores 、 courses 、 majors 四个表,其结构及数据如下所列:

students

id

学号

int(11)  name

姓名

char(4)  sex

性别

char(1)  bofd

生日

date  mid

专业号

tinyint

1    张三   男  1980-12-03   1

2    王武   女  1980-09-22   3

3    李四   女  1981-03-04   2

4    赵六   女  1981-05-24   1

5    张建国   男  1980-06-02   4

6    赵娟   女  1980-08-30   2

scores

id

学号

char(10)  term

学期

tinyint  cid

课程编号

smallint  score

分数

numerirc(4,1)

1   1  2  80.0

1   2  2  76.0

2   1  3  60.0

2   2  3  65.0

3   4  1  66.0

3   4  2  NULL

3   4  4  81.0

3   4  6  70.0

5   1  2  67.0

6   1  2  50.0

6   2  2  87.0

6   2  3  86.0

courses

cid

课程编号 smallint  cname

课程名称 chr(24)

1   电子商务概论

2  c 语言程序设计

3  MySQL 数据库

4  php 程序设计

5  FoxPro 数据库

6   会计原理

majors

mid

专业号 tinyint  mname

专业名称 chr(24)

1   电子商务

2   商务英语

3   计算机硬件

4   计算机软件

5   社区管理

6   日语

不考虑学号、考试科目和学期,计算并列出所有考试成绩中,成绩为优的分数的累加值,和成绩为良的分数的平均值。优和良的界线是 90 分和 80 分。(使用一句语句)

答案: select Sum(if(score>90,score,0)) AS  成绩为优的分数累加 ,

avg(if(score between 80 and 89,score,null)) AS  成绩为良的平均成绩

3 .当前数据库是 testdb ,在该数据库中,有 students 、 scores 、 courses 、 majors 四个表,其结构及数据如下所列:

students

id

学号

int(11)  name

姓名

char(4)  sex

性别

char(1)  bofd

生日

date  mid

专业号

tinyint

1    张三   男  1980-12-03   1

2    王武   女  1980-09-22   3

3    李四   女  1981-03-04   2

4    赵六   女  1981-05-24   1

5    张建国   男  1980-06-02   4

6    赵娟   女  1980-08-30   2

scores

id

学号

char(10)  term

学期

tinyint  cid

课程编号

smallint  score

分数

numerirc(4,1)

1   1  2  80.0

1   2  2  76.0

2   1  3  60.0

2   2  3  65.0

3   4  1  66.0

3   4  2  NULL

3   4  4  81.0

3   4  6  70.0

5   1  2  67.0

6   1  2  50.0

6   2  2  87.0

6   2  3  86.0

courses

cid

课程编号 smallint  cname

课程名称 chr(24)

1   电子商务概论

2  c 语言程序设计

3  MySQL 数据库

4  php 程序设计

5  FoxPro 数据库

6   会计原理

majors

mid

专业号 tinyint  mname

专业名称 chr(24)

1   电子商务

2   商务英语

3   计算机硬件

4   计算机软件

5   社区管理

6   日语

将 students 表中的结构(主键和索引)和数据复制到一个新的 students1 表中。(分两个步骤两句语句)

答案: create table students1 like students;

insert into students1 select * from students;

4 .现有一销售表,表名是 sale ,它的结构如下:

id int ( 标识号 )

codno char(7) ( 商品编码 )

codname varchar(30) ( 商品名称 )

spec varchar(20)  (商品规格)

price numeric(10,2)  (价格)

sellnum int  (销售数量)

deptno char(3)  (售出分店编码)

selldate datetime  (销售时间)

要求:写出查询销售时间段在 2002-2-15 日到 2002-4-29 之间,分店编码是 01 的所有记录。

答案: SELECT * FROM sale

 WHERE (selldate >= '2002-2-15' AND selldate <='2002-4-29')

 AND deptno = '01'

5 .编写一个返回表 products 中 prod_price 字段平均值且名称为 productpricing 的存储过程

答案: CREATE PROCEDURE productpricing()

BEGIN

Select avg(prod_price) from products;

End;

6 .创建一张学生表,表名 stu ,包含以下信息 :

学号,姓名 (8 位字符),年龄,性别( 4 位字符),家庭住址( 50 位字符),联系电话

答案: Create table stu ( 学号  int ,

姓名  varchar(8),

年龄  int,

性别  varchar(4),

家庭地址  varchar(50),

联系电话  int

);

你可能感兴趣的:(MySql测试题)