数据库懂得都懂

...

一. 单选题(共8题,40分)1. (单选题)MySQL中存储过程的建立以关键字(         )开始,后面仅跟存储过程的名称和参数。

A. CREATE PROCEDURE B. CREATE TRIGGERC. CREATE VIEWD. CREATE FUNCTION我的答案: A:CREATE PROCEDURE ;正确答案: A:CREATE PROCEDURE ;5分2. (单选题)索引可以提高()操作效率。A. updateB. selectC. deleteD. insert我的答案: B:select;正确答案: B:select;5分3. (单选题)对于5叉BTree,每个非叶子节点由n个key与n+1个指针组成,其中n的取值范围为:A. 3<=nB. 3<=n<=5C. 2<=n<=4D. 3<=n<=4我的答案: C:2<=n<=4;正确答案: C:2<=n<=4;5分答案解析:一颗m叉的BTree,每个非叶子节点由n个key与n+1个指针组成,其中[ceil(m/2)-1] <= n <= m-14. (单选题)光标的一般使用步骤,以下正确的是(    )。

A. 声明光标 打开光标 使用光标 关闭光标B. 声明光标 打开光标 选择光标 关闭光标C. 声明光标 使用光标 打开光标 关闭光标D. 打开光标 声明光标 使用光标 关闭光标我的答案: A:声明光标 打开光标 使用光标 关闭光标;正确答案: A:声明光标 打开光标 使用光标 关闭光标;5分5. (单选题)5.1版本以后(    )存储引擎是Mysql的默认存储引擎。A. MEMORYB. InnDBC. MyISAMD. MERGE我的答案: B:InnDB;正确答案: B:InnDB;5分6. (单选题)唯一索引的作用是()。A. 保证参加唯一索引的各列不能再参加其他索引B. 保证各行在该索引列上的值都不能重复C. 保证各行在该索引列上的值都不为NULLD. 保证唯一索引不能被删除我的答案: B:保证各行在该索引列上的值都不能重复;正确答案: B:保证各行在该索引列上的值都不能重复;5分答案解析:索引列的值必须唯一,但允许有空值7. (单选题)在Mysql中,创建唯一索引的关键字是()。A. only indexB. fulltest indexC. indexD. unique index我的答案: D:unique index;正确答案: D:unique index;5分8. (单选题)MyISAM、InnoDB、Memory三种存储引擎都支持的索引为:()A. BTREE索引B. R-tree 索引C. Full-textD. HASH 索引我的答案: A:BTREE索引;正确答案: A:BTREE索引;5分二. 多选题(共2题,10分)9. (多选题)索引的类型包括:()A. 唯一索引B. 复合索引C. 主键索引D. 全文索引E. 普通索引我的答案: ABCDE:唯一索引; 复合索引; 主键索引; 全文索引; 普通索引;正确答案: ABCDE:唯一索引; 复合索引; 主键索引; 全文索引; 普通索引;5分10. (多选题)B+Tree为BTree的变种,B+Tree与BTree的区别为:A. B+Tree只有叶子节点保存key信息,查询任何key都要从root走到叶子。所以B+Tree的查询效率更加稳定。B. 所有的非叶子节点都可以看作是key的索引部分C. n叉B+Tree最多含有n个key,而BTree最多含有n-1个keyD. B+Tree的叶子节点保存所有的key信息,依key大小顺序排列。我的答案: ABCD:B+Tree只有叶子节点保存key信息,查询任何key都要从root走到叶子。所以B+Tree的查询效率更加稳定。; 所有的非叶子节点都可以看作是key的索引部分; n叉B+Tree最多含有n个key,而BTree最多含有n-1个key; B+Tree的叶子节点保存所有的key信息,依key大小顺序排列。 ;正确答案: ABCD:B+Tree只有叶子节点保存key信息,查询任何key都要从root走到叶子。所以B+Tree的查询效率更加稳定。; 所有的非叶子节点都可以看作是key的索引部分; n叉B+Tree最多含有n个key,而BTree最多含有n-1个key; B+Tree的叶子节点保存所有的key信息,依key大小顺序排列。 ;5分三. 填空题(共4题,20分)11. (填空题)linux中查看mysql服务器运行状态的命令是:_____________。(注意命令的各个单词之间用一个半角空格分割)我的答案:5分(1) service mysql status (2) service mysqld status 正确答案:(1) service mysql status(2) service mysqld status12. (填空题)linux中重启mysql服务器的命令是:_____________。(注意命令的各个单词之间用一个半角空格分割)我的答案:5分(1) service mysql restart 正确答案:(1) service mysql restart13. (填空题)linux中停止mysql服务器的命令是:_____________。(注意命令的各个单词之间用一个半角空格分割)我的答案:5分(1) service mysql stop 正确答案:(1) service mysql stop14. (填空题)linux中启动mysql服务器的命令是:_____________。(注意命令的各个单词之间用一个半角空格分割)我的答案:5分(1) service mysql start 正确答案:(1) service mysql start四. 判断题(共6题,30分)15. (判断题)存储过程和函数的区别在于函数必须有返回值,而存储过程没有。A. 对B. 错我的答案: 对正确答案: 对5分16. (判断题)视图(View)是一种虚拟存在的表。其行和列数据来自定义视图的查询中使用的表, 并且是在使用视图时动态生成的。A. 对B. 错我的答案: 对正确答案: 对5分17. (判断题)游标是用来存储查询结果集的数据类型 , 在存储过程和函数中可以使用光标对结果集进行循环的处理。A. 对B. 错我的答案: 对正确答案: 对5分18. (判断题)MyISAM 不支持事务、也不支持外键,其优势是访问的速度快,对事务的完整性性没有要求。A. 对B. 错我的答案: 对正确答案: 对5分19. (判断题)索引可以有效的提升查询数据的效率,因此索引数量多多益善。A. 对B. 错我的答案: 错正确答案: 错5分答案解析:索引可以有效的提升查询数据的效率,但索引数量不是多多益善,索引越多,维护索引的代价自然也就水涨 船高。对于插入、更新、删除等DML操作比较频繁的表来说,索引过多,会引入相当高的维护代价,降低 DML操作的效率,增加相应操作的时间消耗。另外索引过多的话,MySQL也会犯选择困难病,虽然最终仍然 会找到一个可用的索引,但无疑提高了选择的代价。20. (判断题)MySql索引数据结构对经典的B+Tree进行了优化。在原B+Tree的基础上,增加一个指向相邻叶子节点的链表指 针,就形成了带有顺序指针的B+Tree,提高区间访问的性能。A. 对B. 错我的答案: 对正确答案: 对一. 单选题(共9题,81分)1. (单选题)对于UPDATE、DELETE和INSERT语句,InnoDB会自动给涉及数据集加(   )。A. 不会加任何锁B. 共享锁(S):C. 表级锁D. 锁(X)我的答案: D:锁(X);正确答案: D:锁(X);9分答案解析:2. (单选题)在Mysql中,事务中使用下列SQL语句不会引起锁定(   )。A. INSERTB. UPDATEC. DELETED. SELECT我的答案: D:SELECT;正确答案: D:SELECT;9分答案解析:3. (单选题)以下匹配'1 ton'和'2 ton'及'3 ton'的正则表达式是(   )。A. '123 ton'B. '1|2|3 ton'C. '1,2,3 ton'D. '[123] ton'我的答案: D:'[123] ton';正确答案: D:'[123] ton';9分答案解析:4. (单选题)数据库的隔离级别有4个,由低到高依次为Read uncommitted、Read committed、Repeatable read、Serializable, 隔离级别为Repeatable read时,不能解决(   )问题。

A. 丢失更新B. 脏读C. 幻读D. 不可重复读我的答案: C:幻读;正确答案: C:幻读;9分答案解析:5. (单选题)在select语句的where子句中,使用正则表达式过滤数据的关键字是(   )。A. regexpB. likeC. againstD. match我的答案: A:regexp;正确答案: A:regexp;9分答案解析:6. (单选题)返回字符串的字节长度的函数是(   )。A. leftB. lengthC. lenD. long我的答案: B:length;正确答案: B:length;9分答案解析:7. (单选题)数据库的隔离级别有4个,由低到高依次为Read uncommitted、Read committed、Repeatable read、rializable,Mysql 的数据库的默认隔离级别为(     )。A. Read committedB. SerializableC. Repeatable readD. Read uncommitted我的答案: C:Repeatable read;正确答案: C:Repeatable read;9分答案解析:8. (单选题)返回当前日期的函数是(   )。A. adddateB. curdateC. curnowD. curtime我的答案: B:curdate;正确答案: B:curdate;9分答案解析:9. (单选题)在正则表达式中,匹配任意一个字符的符号是(   )。A. .B. -C. ?D. *我的答案: A:.;正确答案: A:.;9分答案解析:二. 多选题(共2题,19分)10. (多选题)按照粒度大小,MySQL有3种类型的锁,分别是(   )。

A. 行级锁B. 间隙锁C. 表级锁D. 页面锁我的答案: ACD:行级锁; 表级锁; 页面锁;正确答案: ACD:行级锁; 表级锁; 页面锁;9分11. (多选题)并发事务处理带来的问题包括(   )。A. 丢失更新B. 不可重复读C. 脏读D. 幻读我的答案: ABCD:丢失更新; 不可重复读; 脏读; 幻读;正确答案: ABCD:丢失更新; 不可重复读; 脏读; 幻读;10分一. 单选题(共27题,75.6分)1. (单选题)【单选题】下列四项中,不属于数据库特点的是(   )。A. 数据完整性B. 数据冗余很高C. 数据独立性高D. 数据共享我的答案: B:数据冗余很高;正确答案: B:数据冗余很高;2.8分答案解析:2. (单选题)【单选题】数据库逻辑结构设计阶段的主要功能是:(   )。A. 选择合适的存储结构和存储路径B. 建立数据库的E-R模型C. 明确用户需求,确定新系统的功能D. 将数据库的E-R模型转换为关系模型我的答案: D:将数据库的E-R模型转换为关系模型;正确答案: D:将数据库的E-R模型转换为关系模型;2.8分答案解析:3. (单选题)【单选题】以下哪种操作能够实现实体完整性(   )A. 设置唯一键B. 设置主键C. 设置外键D. 减少数据冗余我的答案: B:设置主键;正确答案: B:设置主键;2.8分答案解析:4. (单选题)【单选题】如果对于实体集A中的每一个实体,实体集B中有可有多个个实体与之联系;反之,对于实体集B中的每一个实体,实体集A中也可有多个实体与之联系。则称实体集A与B具有(   )。A. N:M联系B. 1:N联系C. 多种联系D. 1:1联系我的答案: A:N:M联系;正确答案: A:N:M联系;2.8分答案解析:5. (单选题)【单选题】MySql数据库中,取余数的运算符是(   )。A. /B. *C. %D. mode我的答案: C:%;正确答案: C:%;2.8分答案解析:6. (单选题)【单选题】对于MySql数据库,设计用户表时,家庭住址字段最好采用下面的哪个数据类型进行存储(   )A. VARCHAR2B. VARCHARC. CHARD. CHAR2我的答案: B:VARCHAR;正确答案: B:VARCHAR;2.8分答案解析:7. (单选题)【单选题】SQL是一种(   )语言。A. 高级算法B. 函数型C. 关系数据库D. 人工智能我的答案: C:关系数据库;正确答案: C:关系数据库;2.8分答案解析:8. (单选题)【单选题】在数据库的三级模式结构中,内模式有(   )A. 2个B. 任意多个C. 1个D. 3个我的答案: C:1个;正确答案: C:1个;2.8分答案解析:9. (单选题)【单选题】DECIMAL是(   )数据类型A. 单精度浮点值B. 双精度浮点值C. 可变精度浮点值D. 整数值我的答案: C:可变精度浮点值;正确答案: C:可变精度浮点值;2.8分答案解析:10. (单选题)【单选题】下列哪个不是数据库对象(   )。A. 视图B. 触发器C. 表D. 数据模型我的答案: D:数据模型;正确答案: D:数据模型;2.8分答案解析:11. (单选题)【单选题】根据关系模式的完整性规则,一个关系中的主键(   )。A. 不允许空值B. 不能由两个字段组成C. 可以取空值D. 不能成为另一个关系的外部键我的答案: A:不允许空值;正确答案: A:不允许空值;2.8分答案解析:12. (单选题)【单选题】(   )字段可以采用默认值。A. 姓名B. 备注C. 专业D. 出生时间我的答案: C:专业;正确答案: C:专业;2.8分答案解析:13. (单选题)【单选题】在数据库设计中使用E-R图工具的阶段是(   )。A. 数据库实施阶段B. 概念结构设计阶段C. 数据库物理设计阶段D. 需求分析阶段我的答案: B:概念结构设计阶段;正确答案: B:概念结构设计阶段;2.8分答案解析:14. (单选题)【单选题】概念结构设计阶段得到的结果是(   )。A. 某个DBMS所支持的数据模型B. E-R图表示的概念模型C. 存储结构和方法的物理结构D. 数据字典描述的数据需求我的答案: B:E-R图表示的概念模型;正确答案: B:E-R图表示的概念模型;2.8分答案解析:15. (单选题)【单选题】设R是一个关系模式,如果R中的每个属性都是不可分解的,则称R属于(   )。A. 第一范式B. 第二范式C. 第三范式D. BC范式我的答案: A:第一范式;正确答案: A:第一范式;2.8分答案解析:16. (单选题)【单选题】关系数据库中,主键是(   )A. 允许有多个主键的B. 为标识表中唯一的实体C. 只允许以表中第一字段建立D. 创建唯一的索引,允许空值我的答案: B:为标识表中唯一的实体;正确答案: B:为标识表中唯一的实体;2.8分答案解析:17. (单选题)【单选题】下列描述正确的是(   )。A. 一个数据库只能包含一个数据表B. 一个数据表可以包含多个数据库C. 一个数据库只能包含两个数据表D. 一个数据库可以包含多个数据表我的答案: D:一个数据库可以包含多个数据表;正确答案: D:一个数据库可以包含多个数据表;2.8分答案解析:18. (单选题)【单选题】(   )是位于用户与操作系统之间的一层数据管理软件,它属于系统软件,它为用户或应用程序提供访问数据库的方法。数据库在建立、使用和维护时由其统一管理、统一控制。A. DBMSB. DBC. DBAD. DBS我的答案: A:DBMS;正确答案: A:DBMS;2.8分答案解析:19. (单选题)【单选题】关系数据库的规范化理论指出,关系数据库中的关系应满足一定的要求,最起码的要求是达到1NF,即满足(   )。A. 每个属性都有是不可再分的基本数据项B. 主关键字唯一标识表中的每一行C. 关系中的行不允许重复D. 每个非关键字列都完全依赖于主关键字我的答案: A:每个属性都有是不可再分的基本数据项;正确答案: A:每个属性都有是不可再分的基本数据项;2.8分答案解析:20. (单选题)【单选题】在数据库管理系统中,设计表属于(   )A. 物理结构设计B. 逻辑结构设计C. 数据库设计D. 概念结构设计我的答案: B:逻辑结构设计;正确答案: B:逻辑结构设计;2.8分答案解析:21. (单选题)【单选题】数据库设计中的概念结构设计的主要工具是(   )。A. 数据模型B. 概念模型C. E-R模型D. 新奥尔良模型我的答案: C:E-R模型;正确答案: C:E-R模型;2.8分答案解析:22. (单选题)【单选题】在E-R模型中,实体间的联系用( )图标来表示。A. 矩形B. 直线C. 菱形D. 椭圆我的答案: C:菱形;正确答案: C:菱形;2.8分23. (单选题)【单选题】MySQL是一种(   )类型的数据库管理系统。A. 实体-关系模型B. 关系模型C. 层次模型D. 网状模型我的答案: B:关系模型;正确答案: B:关系模型;2.8分答案解析:24. (单选题)【单选题】图书与读者之间是(   )A. 多对多关系B. 多对一关系C. 一对多关系D. 一对一关系我的答案: B:多对一关系;正确答案: B:多对一关系;2.8分答案解析:25. (单选题)【单选题】公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从部门到职员的联系类型是(   )A. 一对一B. 多对多C. 一对多D. 多对一我的答案: C:一对多;正确答案: C:一对多;2.8分答案解析:26. (单选题)【单选题】数据库服务器、数据库和表的关系,正确的说法是(   )A. 一个数据库服务器可以管理多个数据库,一个数据库可以包含多个表B. 一个数据库服务器可以管理多个数据库,一个数据库只能包含一个表C. 一个数据库服务器只能管理一个数据库,一个数据库可以包含多个表D. 一个数据库服务器只能管理一个数据库,一个数据库只能包含一个表我的答案: A:一个数据库服务器可以管理多个数据库,一个数据库可以包含多个表;正确答案: A:一个数据库服务器可以管理多个数据库,一个数据库可以包含多个表;2.8分答案解析:27. (单选题)【单选题】关于表的主键,说法正确的是(   )。A. 主键字段的值可以重复B. 主键字段的值能为NullC. 主键字段的值不能重复D. 主键字段最多只能建立在一个字段上我的答案: C:主键字段的值不能重复;正确答案: C:主键字段的值不能重复;2.8分答案解析:二. 填空题(共8题,24.4分)28. (填空题)[填空题]在删除关联表中数据时,可以先删除从表中的相关记录或将从表外键字段值设置为(   ),再删除主表中的相关记录,这样一定能成功删除。我的答案:2.8分(1) null 正确答案:(1) null;答案解析:无29. (填空题)[填空题]MySQL 是一种(   )(多用户、单用户)的数据库管理系统。我的答案:2.8分(1) 多用户 正确答案:(1) 多用户;答案解析:无30. (填空题)[填空题]在 Windows 下配置 MySql 服务器默认使用的用户是(   )。我的答案:2.8分(1) root 正确答案:(1) root;答案解析:无31. (填空题)[填空题]在 MySQL 中,除了使用 CREATE OR REPLACE VIEW 语句修改视图外,还可以使用(   )语句来修改视图。我的答案:2.8分(1) alter view 正确答案:(1) alter; alter view;答案解析:无32. (填空题)[填空题]若想为表中插入的新记录自动生成唯一的 ID,可以使用(   )约束来实现。我的答案:2.8分(1) auto_increment; 正确答案:(1) auto_increment;答案解析:无33. (填空题)[填空题]在 MySQL 中,整数类型可分为 5 种,分别是 TINYINT、SMALLINT、MEDIUMINT、(   )和 BIGINT。我的答案:2.8分(1) int 正确答案:(1) int;答案解析:无34. (填空题)[填空题]在 MySQL 中,查看已经存在数据库的 sql 语句是(   )。我的答案:2.8分(1) SHOW DATABASES; 正确答案:(1) show databases;答案解析:无35. (填空题)[填空题]在 MySQL 中,可以使用关键字(   )按某个字段或者多个字段中的值进行分组,字段中值相同的为一组。我的答案:4.8分(1) group by 正确答案:(1) group by;一. 单选题(共38题,76分)1. (单选题)【单选题】一张表的主键个数为( )A. 至多3个B. 至多2个C. 没有限制D. 至多1个我的答案: D:至多1个;正确答案: D:至多1个;2分2. (单选题)【单选题】下面语句中,哪种语句用来创建视图?A. CREATE TABLEB. ALTE VIEWC. DROP VIEWD. CREATE VIEW我的答案: D:CREATE VIEW;正确答案: D:CREATE VIEW;2分3. (单选题)【单选题】查找数据库中所有的数据表用以下哪一项( )A. SHOW TABLEB. SHOW DATABASESC. SHOW DATABASED. SHOW TABLES我的答案: D:SHOW TABLES;正确答案: D:SHOW TABLES;2分4. (单选题)【单选题】下列说法错误的是( )A. 能够完全像操作表一样操作视图B. 删除视图不会影响原表数据C. 视图中是定义而无数据D. 界面创建的视图不能通过命令修改我的答案: A:能够完全像操作表一样操作视图;正确答案: A:能够完全像操作表一样操作视图;2分5. (单选题)【单选题】在MySQL中,建立数据库用( )A. CREATE TABLE命令B. CREATE INDEX命令C. CREATE DATABASE命令D. CREATE TRIGGER命令我的答案: C:CREATE DATABASE命令;正确答案: C:CREATE DATABASE命令;2分6. (单选题)【单选题】下面关于删除视图的说法哪一个是正确的( )A. 删除视图后,和视图关联的表中的数据不再存在B. 用dorp VIEW删除视图C. 视图被删除后视图中的数据也将被删除D. 删除视图后应立即用COMMIT语句使更改生效我的答案: B:用dorp VIEW删除视图;正确答案: B:用dorp VIEW删除视图;2分7. (单选题)【单选题】使用哪个命令可以从表的行中删除所有数据而不删除表自身?A. DROP TABLEB. ALTER TABLEC. MODIFYD. DELETE FROM我的答案: D:DELETE FROM;正确答案: D:DELETE FROM;2分8. (单选题)【单选题】修改记录内容不能采用( )A. 界面方式B. DELETE和 INSERTC. UPDATED. ALTER我的答案: A:界面方式;正确答案: D:ALTER;0分9. (单选题)【单选题】视图是一个“虚表”,视图的构造基于( )A. 数据字典B. 视图C. 基本表D. 基本表或视图我的答案: D:基本表或视图;正确答案: D:基本表或视图;2分10. (单选题)【单选题】在SQL中,DROP INDEX 语句的作用是( )A. 更新索引B. 修改索引C. 建立索引D. 删除索引我的答案: D:删除索引;正确答案: D:删除索引;2分11. (单选题)【单选题】删除经销商1018的数据记录的代码为( ) from distributors where distri_num=1018A. drop tableB. drop columnC. delete *D. delete我的答案: C:delete *;正确答案: D:delete;0分12. (单选题)【单选题】删除数据表用以下哪一项( )A. DELETEDB. DELETEC. DROPD. UPDATE我的答案: C:DROP;正确答案: C:DROP;2分13. (单选题)【单选题】删除用户账号命令是( )A. DELETE USERB. DROP TABLE USERC. DROP USERD. DELETE FROM USER我的答案: C:DROP USER;正确答案: C:DROP USER;2分14. (单选题)MySQL中创建视图应使用( )语句。A. Create SchemaB. Create DatebaseC. Create TableD. Create View我的答案: D:Create View;正确答案: D:Create View;2分15. (单选题)【单选题】学生关系模式 S( S#,Sname,Sex,Age),S的属性分别表示学生的学号、姓名、性别、年龄。要在表S中删除一个属性“年龄”,可选用的SQL语句是( )A. DELETE Age from SB. ALTER TABLE S DROP AgeC. ALTER TABLE S ‘Age’D. UPDATE S Age我的答案: B:ALTER TABLE S DROP Age;正确答案: B:ALTER TABLE S DROP Age;2分16. (单选题)【单选题】查找表结构用以下哪一项( )A. SELETEB. ALTERC. DESCD. FIND我的答案: C:DESC;正确答案: C:DESC;2分17. (单选题)【单选题】要快速完全清空一个表,可以使用如下语句:A. DELETE TABLEB. DROP TABLEC. CLEAR TABLED. TRUNCATE TABLE我的答案: D:TRUNCATE TABLE;正确答案: D:TRUNCATE TABLE;2分18. (单选题)【单选题】下列哪些语句对主键的说明正确( )A. 在数据表中的唯一索引B. 主键不唯一C. 主键可重复D. 主键用foreign key修饰我的答案: A:在数据表中的唯一索引;正确答案: A:在数据表中的唯一索引;2分19. (单选题)下列SQL语句中,能够实现参照完整性控制的语句是:( ))。A. ReferencesB. Foreign KeyC. Primary KeyD. Foreignkey和references我的答案: D:Foreignkey和references;正确答案: D:Foreignkey和references;2分20. (单选题)【单选题】关系数据库中,主键是( )A. 只允许以表中第一字段建立B. 允许有多个主键的C. 为标识表中唯一的实体D. 创建唯一的索引,允许空值我的答案: C:为标识表中唯一的实体;正确答案: C:为标识表中唯一的实体;2分21. (单选题)【单选题】以下删除数据库正确的( )A. Drop * from empB. Drop database empC. delete database empD. Delete * from emp我的答案: B:Drop database emp;正确答案: B:Drop database emp;2分22. (单选题)关于Foreign Key约束的描述不正确的是:( )A. 以其他表Primary Key约束和Unique约束为前提B. 体现数据库中表之间的关系C. 每个表中都必须定义D. 实现参照完整性我的答案: C:每个表中都必须定义;正确答案: C:每个表中都必须定义;2分23. (单选题)【单选题】使用ALTER TABLE修改表时,如果要修改表的名称,可以使用哪一子句?( )A. RENAMEB. CHANGE NAMEC. NEW NAMED. SET NAME我的答案: A:RENAME;正确答案: A:RENAME;2分24. (单选题)【单选题】查找数据表中的记录用以下哪一项( )A. ALTREB. SELECTC. DELETED. UPDATE我的答案: D:UPDATE;正确答案: B:SELECT;0分25. (单选题)【单选题】若用户要连接数据库,则该用户必须拥有的权限是( )A. create sessionB. connectC. create indexD. create table我的答案: A:create session;正确答案: A:create session;2分26. (单选题)【单选题】视图可以用于( )A. 限制对表中指定列的访问B. A和B都是C. A和B都不是D. 限制对表中行的子集的访问我的答案: C:A和B都不是;正确答案: B:A和B都是;0分27. (单选题)【单选题】关于表的主键,说法正确的是( )A. 主键字段最多只能建立在一个字段上B. 主键字段的值不能重复C. 主键字段的值可以重复D. 主键字段的值能为Null我的答案: B:主键字段的值不能重复;正确答案: B:主键字段的值不能重复;2分28. (单选题)【单选题】若想要修改一个表的结构,应该用以下哪个命令( )A. REBUILD TABLEB. ALTER TABLEC. DEFINE TABLED. MODIFY TABLE我的答案: B:ALTER TABLE;正确答案: B:ALTER TABLE;2分29. (单选题)【单选题】在SQL语言中的视图VIEW是数据库的( )A. 外模式B. 模式C. 内模式D. 存储模式我的答案: A:外模式;正确答案: A:外模式;2分30. (单选题)【单选题】以下能够删除一列的是( )A. alter table emp delete addcolumnB. alter table emp remove addcolumnC. alter table emp delete column addcolumnD. alter table emp drop column addcolumn我的答案: D:alter table emp drop column addcolumn;正确答案: D:alter table emp drop column addcolumn;2分31. (单选题)【单选题】使用CREATE TABLE语句的( )子句,在创建基本表时可以启用全文本搜索A. ENGINEB. FULLTEXTC. WHRERD. FROM我的答案: B:FULLTEXT;正确答案: B:FULLTEXT;2分32. (单选题)【单选题】用于显示表结构的命令是什么?( )A. HOSTB. DESCC. SELECTD. DIR我的答案: B:DESC;正确答案: B:DESC;2分33. (单选题)【单选题】用SQL 的ALTER TABLE 语句修改基本表时,删除其中某个列的约束条件应使用的子句是( )A. MODIFYB. DROPC. ADDD. DELETE我的答案: B:DROP;正确答案: B:DROP;2分34. (单选题)【单选题】若要撤销数据库中已经存在的表S,可用( )A. DROP SB. DELETE TABLE SC. DROP TABLE SD. DELETE S我的答案: C:DROP TABLE S;正确答案: C:DROP TABLE S;2分35. (单选题)【单选题】以下删除记录正确的( )A. Drop from emp where name='dony';B. Drop * from emp where name='dony';C. delete from emp where name='dony';D. Delete * from emp where name='dony';我的答案: C:delete from emp where name='dony';;正确答案: C:delete from emp where name='dony';;2分36. (单选题)【单选题】以下哪种操作能够实现实体完整性( )A. 设置主键B. 设置唯一键C. 设置外键D. 减少数据冗余我的答案: A:设置主键;正确答案: A:设置主键;2分37. (单选题)【单选题】视图不能实现( ) 的功能。A. 控制操作表的列和记录B. 把常用多表查询变成对视图的简单操作C. 可以修改原表结构D. 可以更新原表内容我的答案: C:可以修改原表结构;正确答案: C:可以修改原表结构;2分38. (单选题)【单选题】删除表的所有记录采用(   )。A. DELETEB. DROP TABLEC. 选项A和CD. TRUNCATE TABLE我的答案: C:选项A和C;正确答案: C:选项A和C;2分答案解析:二. 填空题(共12题,24分)39. (填空题)[填空题]在 MySQL 中,删除数据库的语句是(   )。我的答案:2分(1) drop database; 正确答案:(1) drop database;答案解析:无40. (填空题)[填空题]在 MySQL 中,创建临时表的语句是(   )。我的答案:2分(1) CREATE TEMPORARY TABLE 正确答案:(1) create temporary table;答案解析:无41. (填空题)[填空题]在 MySQL 中,删除函数的语句是(   )。我的答案:2分(1) drop function; 正确答案:(1) drop function;答案解析:无42. (填空题)[填空题]在 MySQL 中,查看表结构语句是(   )。我的答案:2分(1) describe table 正确答案:(1) describe table;show create table;答案解析:无43. (填空题)[填空题]手动刷新权限表的语句是:(   )。我的答案:2分(1) FLUSH PRIVILEGES 正确答案:(1) flush privileges;答案解析:无44. (填空题)[填空题]在 MySQL 中,创建触发器的语句是(   )。我的答案:2分(1) CREATET RIGGER 正确答案:(1) create trigger;答案解析:无45. (填空题)[填空题]用于返回字符串长度的函数是(   )。我的答案:0分(1) Len() 正确答案:(1) length();char_length();答案解析:无46. (填空题)[填空题]在 MySQL 中,删除触发器的语句是(   )。我的答案:2分(1) DROP TRIGGER 正确答案:(1) drop trigger;答案解析:无47. (填空题)[填空题]在 MySQL 中,删除存储过程的语句是(   )。我的答案:2分(1) DROPPROCEDURE 正确答案:(1) drop procedure;答案解析:无48. (填空题)[填空题]要查询 student 表中 name 字段值以字符“m”开始,以字符“d”结束的记录应该在WHERE 子句后跟 LIKE(   )。我的答案:2分(1) m%d 正确答案:(1) m%d;答案解析:无49. (填空题)[填空题]在 MySQL 中,创建数据库的语句是(   )。我的答案:2分(1) CREATE DATABASE 正确答案:(1) create database;答案解析:无50. (填空题)[填空题]在创建视图时,如果有 OR REPLACE 子句,必须在视图上具有(   )权限。我的答案:2分(1) drop 正确答案:(1) drop;删除;一. 单选题(共31题,86.8分)1. (单选题)存储过程与函数的区别之一是存储过程不能包含( )。A. 游标B. SET语句C. RETURN语句D. 局部变量我的答案: C:RETURN语句;正确答案: C:RETURN语句;2.8分2. (单选题)下列创建游标的语法格式中,正确的是( )。A. CREATE cursor_name CURSOR FOR select_statementB. DECLARE CURSOR cursor_name FOR select_statementC. DECLARE cursor_name CURSOR FOR select_statementD. CREATE CURSOR cursor_name FOR select_statement我的答案: C:DECLARE cursor_name CURSOR FOR select_statement;正确答案: C:DECLARE cursor_name CURSOR FOR select_statement;2.8分3. (单选题)【单选题】返回字符串长度的函数是(   )。A. length()B. left()C. len()D. long()我的答案: A:length();正确答案: A:length();2.8分答案解析:4. (单选题)【单选题】以下哪个不是存储过程的优点()。A. 实现模块化编程,一个存储过程可以被多个用户共享和重用。B. 可以提高数据库的安全性C. 可以增加网络的流量D. 可以加快程序的运行速度我的答案: C:可以增加网络的流量;正确答案: C:可以增加网络的流量;2.8分5. (单选题)【单选题】SELECT CEILING(-14.7), CEILING(14.7)的结果是(   )。A. -14,14B. -14,15C. -15,15D. -15,14我的答案: B:-14,15;正确答案: B:-14,15;2.8分答案解析:6. (单选题)【单选题】下面关于存储过程的描述不正确的是( )。A. 存储过程预先被编译B. 存储过程实际上是一组T-SQL语句C. 存储过程可以完成某一特定的业务逻辑D. 存储过程独立于数据库而存在我的答案: D:存储过程独立于数据库而存在;正确答案: D:存储过程独立于数据库而存在;2.8分7. (单选题)【单选题】以下聚合函数求平均数的是(   )。A. AVGB. SUMC. COUNTD. MAX我的答案: A:AVG;正确答案: A:AVG;2.8分答案解析:8. (单选题)光标的一般使用步骤,以下正确的是( )。A. 声明光标 使用光标 打开光标 关闭光标B. 声明光标 打开光标 使用光标 关闭光标C. 声明光标 打开光标 选择光标 关闭光标D. 打开光标 声明光标 使用光标 关闭光标我的答案: B:声明光标 打开光标 使用光标 关闭光标;正确答案: B:声明光标 打开光标 使用光标 关闭光标;2.8分9. (单选题)在Mysql的命令行中调用存储过程sp和函数fn的方法分别是( )。A. CALL sp(),SELECT fn();B. SELECT sp(),SELECT fn();C. CALL sp(),CALL fn();D. SELECT sp(),CALL fn();我的答案: A:CALL sp(),SELECT fn();;正确答案: A:CALL sp(),SELECT fn();;2.8分10. (单选题)【单选题】求小于或等于一个数的最大的整数的函数是(   )。A. CEILINGB. FLOORC. MAXD. SQRT我的答案: B:FLOOR;正确答案: B:FLOOR;2.8分答案解析:11. (单选题)【单选题】返回当前日期的函数是(   )。A. curnow()B. adddate()C. curtime()D. curdate()我的答案: D:curdate();正确答案: D:curdate();2.8分答案解析:12. (单选题)【单选题】将浮点数8.635保留2位小数,可以使用函数(   )。A. floorB. randC. roundD. ceil我的答案: C:round;正确答案: C:round;2.8分答案解析:13. (单选题)【单选题】下列关于局部变量和用户变量的描述中,错误的是 (   )。A. 在存储函数中只能使用局部变量B. 局部变量使用 DECLARE语句定义C. 局部变量只在 BEGIN...END 语句块之间有效D. 用户变量以 "@"开头,局部变量没有这个符号我的答案: A:在存储函数中只能使用局部变量;正确答案: A:在存储函数中只能使用局部变量;2.8分答案解析:14. (单选题)【单选题】Mysql中使用以下哪个函数可返回当前日期和时间(   )。A. NOW()B. CURTIME()C. CURRENT_DATE()D. CURDATE()我的答案: A:NOW();正确答案: A:NOW();2.8分答案解析:15. (单选题)【单选题】以下()不是触发触发器的操作。A. INSERTB. DELETEC. UPDATED. SELECT我的答案: D:SELECT;正确答案: D:SELECT;2.8分16. (单选题)【单选题】如果要从数据库中删除触发器,应该使用SQL语言的命令( )。A. Drop TriggerB. Disable TriggerC. Remove TriggerD. Delete Trigger我的答案: A:Drop Trigger;正确答案: A:Drop Trigger;2.8分17. (单选题)【单选题】MySQL中的系统变量以( )作前缀。A. @@B. @C. #D. ##我的答案: A:@@;正确答案: A:@@;2.8分18. (单选题)【单选题】SELECT FLOOR(-14.7), FLOOR(14.7)的结果是(   )。A. -15,14B. -14,14C. -14,15D. -15,15我的答案: A:-15,14;正确答案: A:-15,14;2.8分答案解析:19. (单选题)【单选题】MySQL中,创建过程的语句是(   )。A. Create Package BodyB. Create PackageC. Create FunctionD. Create Procedure我的答案: D:Create Procedure;正确答案: D:Create Procedure;2.8分答案解析:20. (单选题)【单选题】SELECT SUBSTRING(‘Welcome to China’, 9)的结果是( )。A. Welcome toB. toC. to ChinaD. Welcome我的答案: C:to China;正确答案: C:to China;2.8分答案解析:21. (单选题)【单选题】格式化日期的函数是(   )。A. CURDATE()B. DATEDIFF()C. DATE_FORMAT()D. DAY()我的答案: C:DATE_FORMAT();正确答案: C:DATE_FORMAT();2.8分答案解析:22. (单选题)现有如下语句:能够直接调用过程P,并能得到正确返回结果的语句是( )。A. CALL P(@a,"张三");B. CALL P(100,@x);C. CALL P(@a,@B);D. CALL P(100,"张三");我的答案: D:CALL P(100,"张三");;正确答案: D:CALL P(100,"张三");;2.8分23. (单选题)【单选题】存储过程与外界的交互不能通过(   )。A. 表B. 游标C. 输出参数D. 输入参数我的答案: B:游标;正确答案: B:游标;2.8分答案解析:24. (单选题)【单选题】可以用(   )来声明游标A. ALTER CURSORB. DECLARE CURSORC. SET CURSORD. CREATE CURSOR我的答案: B:DECLARE CURSOR;正确答案: B:DECLARE CURSOR;2.8分答案解析:25. (单选题)【单选题】以下聚合函数求个数的是(   )。A. COUNTB. SUMC. AVGD. MAX我的答案: A:COUNT;正确答案: A:COUNT;2.8分答案解析:26. (单选题)【单选题】MySQL中,触发器触发的时机有哪两种(   )。A. After BeforeB. Trigger BeforeC. New BeforeD. Before Before我的答案: A:After Before;正确答案: A:After Before;2.8分答案解析:27. (单选题)【单选题】SELECT SUBSTRING(‘Welcome to China’, 9, 2)的结果是( )。A. toB. WelcomeC. Welcome toD. China我的答案: A:to;正确答案: A:to;2.8分答案解析:28. (单选题)【单选题】拼接字段的函数是(   )。A. SUBSTRING()B. CONCAT()C. SUM()D. TRIM()我的答案: B:CONCAT();正确答案: B:CONCAT();2.8分答案解析:29. (单选题)【单选题】关于触发器的描述不正确的是:( )。A. 触发器可以用来实现数据完整性B. 可以实现复杂的商业逻辑C. 对于某类操作,可以创建不同类型的触发器D. 它是一种特殊的存储过程我的答案: B:可以实现复杂的商业逻辑;正确答案: B:可以实现复杂的商业逻辑;2.8分30. (单选题)【单选题】下列说法错误的是(   )。A. 语句体包含一个以上语句时需要采用BEGIN.ENDB. WHILE中循环体有可能一次都不执行C. 注释内容不会产生任何动作D. 多重分支只能用CASE语句我的答案: D:多重分支只能用CASE语句;正确答案: D:多重分支只能用CASE语句;2.8分答案解析:31. (单选题)【单选题】Mysql中,下列说法错误的是(   )。A. 函数必须有返回值B. 函数可以有多个参数C. 存储过程必须有返回值D. 存储过程可以有多个参数我的答案: C:存储过程必须有返回值;正确答案: C:存储过程必须有返回值;2.8分答案解析:二. 填空题(共4题,13.2分)32. (填空题)[填空题]在存储过程中,用于定义变量的关键字是(   )。我的答案:2.8分(1) DECLARE 正确答案:(1) declare;答案解析:无33. (填空题)[填空题]在 MySQL 中,除了使用 CREATE OR REPLACE VIEW 语句修改视图外,还可以使用(   )语句来修改视图。我的答案:2.8分(1) ALTER 正确答案:(1) alter;答案解析:无34. (填空题)[填空题]数据表中的字段默认值是通过(   )关键字定义的。我的答案:2.8分(1) DEFAULT 正确答案:(1) default;DEFAULT答案解析:无35. (填空题)[填空题]进行连接查询时,返回包括左表中的所有记录和右表中符合连接条件的记录,该连接查询是(   )。我的答案:4.8分(1) left 正确答案:(1) left;左外连接;左外连接查询;一. 单选题(共25题,70分)1. (单选题)【单选题】不能采用(   )创建索引。A. ALTER TABLEB. ALTER INDEXC. CREATE TABLED. CREATE INDEX我的答案: B:ALTER INDEX;正确答案: B:ALTER INDEX;2.8分答案解析:答案解析:1、使用CREATE INDEX创建,语法如下:CREATE INDEX indexName ON tableName (columnName(length));2、使用ALTER语句创建,语法如下:ALTER TABLE tableName ADD INDEX indexName(columnName);3、建表的时候创建索引:CREATE TABLE tableName(    id INT NOT NULL,     columnName  columnType,  INDEX [indexName] (columnName(length))  );2. (单选题)【单选题】tb_seller表结构如下,在该表上创建一个复合索引“idx_seller_name_sta_addr”,命令如下所示,下面哪条命令不使用索引(   )。

create table `tb_seller` (

`sellerid` varchar (100),

`name` varchar (100),

`nickname` varchar (50),

`password` varchar (60),

`status` varchar (1),

`address` varchar (100),

`createtime` datetime,

primary key(`sellerid`)

)engine=innodb default charset=utf8mb4;

create index idx_seller_name_sta_addr on tb_seller(name,status,address); 

A.select * from  tb_seller where name='小米科技'

B.select * from  tb_seller where status='1' 

C.select * from  tb_seller where name='小米科技' and status='1'

D.select * from  tb_seller where sellerid='1'

我的答案: B:select * from tb_seller where status='1' ;正确答案: B:select * from tb_seller where status='1' ;2.8分答案解析:sellerid上自动创建主键索引,复合索引按最左前缀法则决定是否采用索引,d违反了最左前缀法则3. (单选题)【单选题】MySQL授予用户权限时,在“Grant”语句中,On子句使用(   )表示所有数据库的所有数据表。A. *.*B. * C. allD. @@我的答案: A:*.*;正确答案: A:*.*;2.8分答案解析:4. (单选题)【单选题】在Mysql中,创建唯一索引的关键字是(   )A. create fulltest indexB. create indexC. create unique indexD. create only index我的答案: C:create unique index;正确答案: C:create unique index;2.8分答案解析:5. (单选题)【单选题】(   )表示一个新的事务处理块的开始A. BEGIN COMMITB. START COMMITC. BEGIN TRANSACTIOND. START TRANSACTION我的答案: D:START TRANSACTION;正确答案: D:START TRANSACTION;2.8分答案解析:6. (单选题)【单选题】若MySql设置默认提交方式为手动提交,第一步用DELETE命令删除了表A中的数据(但并没有提交),第二步成功创建了一个表B,第三步执行了一个ROLLBACK回滚操作.请问以下叙述正确的是(   )A. 表A中的数据没有被恢复回来,表B被创建在数据库中.B. 表A中的数据被恢复回来,创建的表B被从数据库中被删除,恢复为未建表之前的状态C. 表A中的数据被彻底从数据库中删除,表B被创建在数据库中.D. 表A中的数据被彻底从数据库中删除,但表B被从数据库中被删除,恢复为未建表之前的状态我的答案: A:表A中的数据没有被恢复回来,表B被创建在数据库中.;正确答案: A:表A中的数据没有被恢复回来,表B被创建在数据库中.;2.8分答案解析:MySQL的DDL语句是非事务的,即不能对DLL语句进行回滚操作,也就是create table后会自动提交,删除A表的数据也被提交了。应当将DDL和DML语句以及DCL语句严格分开,避免事务被隐性“破坏”,导致误操作情况发生7. (单选题)【单选题】若MySql设置默认提交方式为手动提交,第一步执行了DELETE命令,删除了某表中的一条记录.第二步执行了COMMIT命令. 又执行了ROLLBACK命令.请问以下叙述正确的是(   )。A. 被删除的记录又被恢复回来,仍然存放在数据库的表中B. 被删除的记录彻底从数据库中被删除掉了C. 被删除的记录只是当前用户看不到了,而其它用户还能看到D. 被删除的记录当前用户可以看到,而其它用户却看不到了我的答案: B:被删除的记录彻底从数据库中被删除掉了;正确答案: B:被删除的记录彻底从数据库中被删除掉了;2.8分答案解析:8. (单选题)【单选题】数据库中存放三个关系:学生(学号,姓名)和课程(课程号,课程名)和成绩(学号、课程号、成绩),为快速按姓名查询某位学生所学的课程名,应该(   )。A. 在课程表上按课程号建索引B. 在学生表上按姓名建索引C. 在学生表上按学号建索引D. 在成绩表上按课程号建索引我的答案: B:在学生表上按姓名建索引;正确答案: B:在学生表上按姓名建索引;2.8分答案解析:9. (单选题)【单选题】为数据表创建索引的目的是(   )。A. 创建主键B. 归类C. 创建唯一索引D. 提高查询的检索性能我的答案: D:提高查询的检索性能;正确答案: D:提高查询的检索性能;2.8分答案解析:10. (单选题)【单选题】数据库的隔离级别有4个,由低到高依次为Read uncommitted、Read committed、Repeatable read、Serializable, 隔离级别为Repeatable read时,不能解决(   )问题。A. 脏读B. 幻读C. 丢失更新D. 不可重复读我的答案: B:幻读;正确答案: B:幻读;2.8分答案解析:11. (单选题)【单选题】下面事务隔离级别中,隔离级别最低的是(   )。A. SerializableB. Repeatable readC. Read committedD. Read uncommitted我的答案: D:Read uncommitted;正确答案: D:Read uncommitted;2.8分答案解析:12. (单选题)【单选题】数据库的隔离级别有4个,由低到高依次为Read uncommitted、Read committed、Repeatable read、Serializable,Mysql 的数据库的默认隔离级别为(   )。A. Repeatable readB. Read uncommittedC. SerializableD. Read committed我的答案: A:Repeatable read;正确答案: A:Repeatable read;2.8分答案解析:13. (单选题)【单选题】tb_seller表结构如下,在该表上创建一个复合索引“idx_seller_name_sta_addr”,命令如下所示,下面哪条命令不使用索引(   )。

create table `tb_seller` (

`sellerid` varchar (100),

`name` varchar (100),

`nickname` varchar (50),

`password` varchar (60),

`status` varchar (1),

`address` varchar (100),

`createtime` datetime,

primary key(`sellerid`)

)engine=innodb default charset=utf8mb4;

create index idx_seller_name_sta_addr on tb_seller(name,status,address); 

A.select * from  tb_seller where name='小米科技'

B.select * from  tb_seller where sellerid=1

C.select * from  tb_seller where name='小米科技' and status='1' and  address='北京市'

D.select * from  tb_seller where name='小米科技' and status='1'

我的答案: B:select * from tb_seller where sellerid=1 ;正确答案: B:select * from tb_seller where sellerid=1 ;2.8分答案解析:sellerid上自动创建主键索引,复合索引按最左前缀法则决定是否采用索引,但是B中字符串不加单引号,造成索引失效。14. (单选题)【单选题】在Mysql中,事务中使用下列SQL语句不会引起锁定(   )。A. SELECTB. DELETEC. INSERTD. UPDATE我的答案: A:SELECT;正确答案: A:SELECT;2.8分答案解析:15. (单选题)【单选题】如果要回滚一个事务,则要使用(   )语句。A. beginB. commitC. rollbackD. revoke我的答案: C:rollback;正确答案: C:rollback;2.8分答案解析:16. (单选题)【单选题】MySQL数据库四种特性,不包括(   )。A. 事务性 B. 隔离性C. 原子性D. 一致性我的答案: A:事务性 ;正确答案: A:事务性 ;2.8分答案解析:17. (单选题)【单选题】下列哪类命令在未提交前可以通过ROLLBACK命令进行回退(   )。A. DMLB. DDLC. DCLD. DQL我的答案: A:DML;正确答案: A:DML;2.8分答案解析:18. (单选题)【单选题】对于5叉BTree,每个非叶子节点由n个key与n+1个指针组成,其中n的取值范围为:(   )A. 3<=nB. 3<=n<=4C. 3<=n<=5D. 2<=n<=4我的答案: D:2<=n<=4;正确答案: D:2<=n<=4;2.8分答案解析:一颗m叉的BTree,每个非叶子节点由n个key与n+1个指针组成,其中[ceil(m/2)-1] <= n <= m-119. (单选题)【单选题】以下对于事务的叙述,比较全面的是(   )。A. 事务可以把所操作的数据库由一个状态转变到另一个状态B. 事务在提交之前,其它事务看不到它对数据库的影响C. 事务中的操作是一个整体,要成功都成功,要失败都失败D. 以上所述都是正确的我的答案: D:以上所述都是正确的;正确答案: D:以上所述都是正确的;2.8分答案解析:20. (单选题)【单选题】索引可以提高(   )操作效率。A. deleteB. insertC. updateD. select我的答案: D:select;正确答案: D:select;2.8分答案解析:21. (单选题)【单选题】关于数据控制语言中,收回所授予的权限的语句是(   )。A. UpdateB. RevokeC. CreateD. Grant我的答案: B:Revoke;正确答案: B:Revoke;2.8分答案解析:22. (单选题)【单选题】关于索引的说法,错误的是(   )。A. 一个表可以创建多个不唯索引B. 创建索引有可能改变表记录的排列顺序C. 不可以按照某列的前n个字符创建索引D. 一个表可以创建多个唯-索引我的答案: C:不可以按照某列的前n个字符创建索引;正确答案: C:不可以按照某列的前n个字符创建索引;2.8分答案解析:要是聚簇索引,则会调整存储顺序。创建索引时,用列名(长度),可以按照某列的前n个字符创建索引23. (单选题)【单选题】下列关于读锁和写锁的区别描述正确的是(   )。A. 以上都正确B. 两个读锁是兼容的C. 两个写锁也是不兼容的D. -个读锁和一个写锁是不兼容的我的答案: A:以上都正确;正确答案: A:以上都正确;2.8分答案解析:24. (单选题)【单选题】SQL语句中(   )命令可以授予用户对象权限。A. CREATEB. REVOKEC. DENYD. GRANT我的答案: D:GRANT;正确答案: D:GRANT;2.8分答案解析:25. (单选题)【单选题】MySQL中,预设的、拥有最高权限超级用户的用户名为(   )。A. testB. AdministratorC. DAD. root我的答案: D:root;正确答案: D:root;2.8分答案解析:二. 填空题(共10题,30分)26. (填空题)[填空题]MySQL 中的用户分为(   )用户和普通用户。我的答案:2.8分(1) root 正确答案:(1) root;答案解析:无27. (填空题)[填空题]在 MySQL中,去除重复字段使用关键字(   )。我的答案:2.8分(1) distinct 正确答案:(1) distinct;答案解析:无28. (填空题)[填空题]在 MySQL 中,用于设置 MySQL 结束符的关键字是(   )。我的答案:2.8分(1) delimiter 正确答案:(1) delimiter;答案解析:无29. (填空题)[填空题](   )型数据用于存储逻辑值,它只有两种状态,即true和false。我的答案:2.8分(1) bool 正确答案:(1) bool;布尔;bit;答案解析:无30. (填空题)[填空题]在 MySQL中,要对查询结果进行排序使用关键字(   )。我的答案:2.8分(1) order by 正确答案:(1) order by;答案解析:无31. (填空题)[填空题]MySQL 中用于实现事务提交的语句是(   )语句。我的答案:2.8分(1) commit 正确答案:(1) commit;答案解析:无32. (填空题)[填空题]在 MySQL 的整数类型中,占用字节数最大的类型是(   )。我的答案:2.8分(1) bigint 正确答案:(1) bigint;答案解析:无33. (填空题)【填写题】事务处理控制语言中的Commit命令表示提交事务,而回退事务则用____命令表示。我的答案:2.8分(1) rollback 正确答案:(1) ROLLBACK34. (填空题)[填空题]用二维表结构表示实体以及实体间联系的数据模型称为(   )数据模型。我的答案:2.8分(1) 关系 正确答案:(1) 关系;答案解析:无35. (填空题)[填空题]在 MySQL 中,创建视图需要使用create (   )语句。我的答案:4.8分(1) view 正确答案:(1) view;

【单选题】如果要回滚一个事务,则要使用(   )语句。

  • A. commit

  • B. begin

  • C. rollback

  • D. revoke

我的答案:C正确答案: C

答案解析:

2. (单选题, 0.5 分) 【单选题】下列关于局部变量和用户变量的描述中,错误的是 (   )。

  • A. 在存储函数中只能使用局部变量

  • B. 局部变量只在 BEGIN...END 语句块之间有效

  • C. 局部变量使用 DECLARE语句定义

  • D. 用户变量以 "@"开头,局部变量没有这个符号

我的答案:A正确答案: A

答案解析:

3. (单选题, 0.5 分) 【单选题】进入要操作的数据库TEST用以下哪一项______

  • A. USE TEST

  • B. IN TEST

  • C. SHOW TEST

  • D. USER TEST

我的答案:A正确答案: A

答案解析:

4. (单选题, 0.5 分) 【单选题】创建视图的命令是( )

  • A. alter view

  • B. alter table

  • C. create table

  • D. create view

我的答案:D正确答案: D

5. (单选题, 0.5 分) 【单选题】在MySQL中,下面用于限制分组函数的返回值的子句是______。

  • A. 无法限定分组函数的返回值

  • B. ORDER BY

  • C. WHERE

  • D. HAVING

我的答案:D正确答案: D

答案解析:

6. (单选题, 0.5 分) 【单选题】下列说法错误的是______。

  • A. SELECT可以运算字符表达式

  • B. SELECT中的输出列可以是由字段组成的表达式

  • C. SQL 程序用于触发器和存储过程中

  • D. 游标只能顺序移动

我的答案:C正确答案: C

答案解析:

7. (单选题, 0.5 分) 【单选题】若要在基本表S中增加一列CN(课程名),可用( )

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

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

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

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

我的答案:B正确答案: B

8. (单选题, 0.5 分) 【单选题】向数据表中插入一条记录用以下哪一项______

  • A. INSERT

  • B. UPDATE

  • C. SAVE

  • D. CREATE

我的答案:A正确答案: A

答案解析:

9. (单选题, 0.5 分) 【单选题】使用(   )语句可以删除触发器trig_Test。

  • A. DROP TRIGGER WHERE NAME=‘trig_Test’;

  • B. DROP * FROM trig_Test;

  • C. DROP trig_Test;

  • D. DROP TRIGGER trig_Test;

我的答案:D正确答案: D

答案解析:

10. (单选题, 0.5 分) 【单选题】使用哪个命令可以从表的行中删除所有数据而不删除表自身?

  • A. ALTER TABLE

  • B. DROP TABLE

  • C. MODIFY

  • D. DELETE FROM

我的答案:D正确答案: D

答案解析:

11. (单选题, 0.5 分) 【单选题】触发器不是响应以下哪一语句而自动执行的Mysql语句______

  • A. update

  • B. insert

  • C. delete

  • D. select

我的答案:D正确答案: D

答案解析:

12. (单选题, 0.5 分) 【单选题】SELECT CONCAT("I","love","mysql")的结果是()。

  • A. I love mysql

  • B. Ilovemysql

  • C. mysql

  • D. love

我的答案:B正确答案: B

13. (单选题, 0.5 分) 【单选题】数据库设计中的概念结构设计的主要工具是(   )。

  • A. 新奥尔良模型

  • B. 概念模型

  • C. E-R模型

  • D. 数据模型

我的答案:C正确答案: C

答案解析:

14. (单选题, 0.5 分) 【单选题】假定有一张表用户表users,其中一身份证字段ID_carD)为了维护数据的完整性,在设计数据库时,最好对ID_card字段添加约束,请问应该添加什么约束______

  • A. default

  • B. not null

  • C. check

  • D. primary key

我的答案:D正确答案: D

答案解析:

15. (单选题, 0.5 分) 【单选题】如果要回滚一个事务,则要使用(   )语句。

  • A. begin

  • B. rollback

  • C. commit

  • D. revoke

我的答案:B正确答案: B

答案解析:

16. (单选题, 0.5 分) 【单选题】一张表的主键个数为______

  • A. 至多1个

  • B. 没有限制

  • C. 至多3个

  • D. 至多2个

我的答案:A正确答案: A

答案解析:

17. (单选题, 0.5 分) 【单选题】关于存储过程的说法,错误的是(   )。

  • A. 存储过程必须带参数,要么是输入参数,要么是输出参数

  • B. 它可作为一个独立的数据库对象并作为一个单元供用户在应用程序中调用

  • C. 存储过程提高了执行效率

  • D. 存储过程方便用户批量执行SQL命令

我的答案:A正确答案: A

答案解析:

18. (单选题, 0.5 分) 【单选题】SELECT ROUND(45.953, -1) 的显示结果为(   )。

  • A. 45.93

  • B. 45.9

  • C. 50

  • D. 46

我的答案:C正确答案: C

答案解析:

19. (单选题, 0.5 分) 【单选题】MySQL数据库四种特性,不包括(   )。

  • A. 隔离性

  • B. 事务性 

  • C. 一致性

  • D. 原子性

我的答案:B正确答案: B

答案解析:

20. (单选题, 0.5 分) 【单选题】下列关于读锁和写锁的区别描述正确的是(   )。

  • A. 两个读锁是兼容的

  • B. 以上都正确

  • C. -个读锁和一个写锁是不兼容的

  • D. 两个写锁也是不兼容的

我的答案:B正确答案: B

答案解析:

21. (单选题, 0.5 分) 【单选题】建表语句中的 not null,该代码表示的含义是:

  • A. 不允许读取数据

  • B. 允许空格

  • C. 非空约束

  • D. 不允许写入数据

我的答案:C正确答案: C

22. (单选题, 0.5 分) 【单选题】下列关于表和视图的说法正确的是______

  • A. 对所有视图也可象表一样执行UPDATE操作

  • B. 视图是表的一个镜像备份

  • C. 每个视图对应一个表

  • D. 视图的数据全部在表中

我的答案:D正确答案: D

答案解析:

23. (单选题, 0.5 分) 【单选题】为数据表创建索引的目的是(   )。

  • A. 归类

  • B. 创建唯一索引

  • C. 创建主键

  • D. 提高查询的检索性能

我的答案:D正确答案: D

答案解析:

24. (单选题, 0.5 分) 【单选题】存储过程是一组预先定义并______的Transact-SQL语句

  • A. 解释

  • B. 保存

  • C. 编译

  • D. 编写

我的答案:C正确答案: C

答案解析:

25. (单选题, 0.5 分) 【单选题】delete from employee语句的作用是( )

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

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

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

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

我的答案:A正确答案: A

26. (单选题, 0.5 分) 【单选题】返回字符串长度的函数是(   )。

  • A. length()

  • B. long()

  • C. len()

  • D. left()

我的答案:A正确答案: A

答案解析:

27. (单选题, 0.5 分) 在Mysql的命令行中调用存储过程sp和函数fn的方法分别是( )。

  • A. CALL sp(),CALL fn();

  • B. SELECT sp(),CALL fn();

  • C. SELECT sp(),SELECT fn();

  • D. CALL sp(),SELECT fn();

我的答案:D正确答案: D

28. (单选题, 0.5 分) 【单选题】关于DATETIME与TIMESTAMP两种数据类型的描述,错误的是(   )。

  • A. 两者值的范围不一样

  • B. TIMESTAMP可以自动记录当前日期时间

  • C. 两者值的范围一样

  • D. 两者占用空间不一样

我的答案:C正确答案: C

答案解析:

29. (单选题, 0.5 分) 【单选题】删除emp表中所有数据,且可以rollback,以下语句哪个命令可以实现( )

  • A. delete from emp

  • B. truncate table emp

  • C. drop table emp

  • D. delete * from emp

我的答案:A正确答案: A

30. (单选题, 0.5 分) 【单选题】查询出EMP表中1982年及以后入职的员工信息(注:字段hiredate为入职日期,数据类型为DATE型)

  • A. select * from emp where to_char(hiredate,'YYYYMMDD')>='19820101';

  • B. select * from emp where hiredate>=to_char('19820101','YYYYMMDD');

  • C. select * from emp where hiredate>='19820101';

  • D. select * from emp where to_date(hiredate,'YYYYMMDD')>='19820101';

我的答案:A正确答案: C

答案解析:

31. (单选题, 0.5 分) 【单选题】为数据表创建索引的目的是______

  • A. 归类

  • B. 创建主键

  • C. 创建唯一索引

  • D. 提高查询的检索性能

我的答案:D正确答案: D

答案解析:

32. (单选题, 0.5 分) 【单选题】以下聚合函数求平均数的是(   )。

  • A. MAX

  • B. AVG

  • C. SUM

  • D. COUNT

我的答案:B正确答案: B

答案解析:

33. (单选题, 0.5 分) 【单选题】下面哪一个语句可以使用子查询( )

  • A. DELETE语句

  • B. SELECT 语句

  • C. 以上都是

  • D. UPDATE语句

我的答案:B正确答案: C

答案解析:

34. (单选题, 0.5 分) 【单选题】在数据库设计中使用E-R图工具的阶段是(   )。

  • A. 数据库实施阶段

  • B. 数据库物理设计阶段

  • C. 需求分析阶段

  • D. 概念结构设计阶段

我的答案:D正确答案: D

答案解析:

35. (单选题, 0.5 分) 【单选题】按照姓名升序序排列______

  • A. ORDER BY DESC NAME

  • B. ORDER BY NAME ASC

  • C. ORDER BY ?ASC NAME

  • D. ORDER BY NAME DESC

我的答案:B正确答案: B

答案解析:

36. (单选题, 0.5 分) 【单选题】下列哪些语句对主键的说明正确______

  • A. 主键可重复

  • B. 主键不唯一

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

  • D. 主键用foreign key修饰

我的答案:C正确答案: C

答案解析:

37. (单选题, 0.5 分) 【单选题】SQL是一种______语言。

  • A. 关系数据库

  • B. 函数型

  • C. 人工智能

  • D. 高级算法

我的答案:A正确答案: A

答案解析:

38. (单选题, 0.5 分) 【单选题】如果对于实体集A中的每一个实体,实体集B中有可有多个个实体与之联系;反之,对于实体集B中的每一个实体,实体集A中也可有多个实体与之联系。则称实体集A与B具有(   )。

  • A. 1:N联系

  • B. N:M联系

  • C. 多种联系

  • D. 1:1联系

我的答案:B正确答案: B

答案解析:

39. (单选题, 0.5 分) 【单选题】CREATE,DROP,ALTER等命令属于下列哪类命令______

  • A. DML

  • B. DDL

  • C. DQL

  • D. DCL

我的答案:B正确答案: B

答案解析:

40. (单选题, 0.5 分) 【单选题】select * from student 该代码中的 * 号,表示的正确含义是:

  • A. 普通的字符*号

  • B. 模糊查询

  • C. 所有的字段名

  • D. 错误信息

我的答案:C正确答案: C

答案解析:

二. 填空题(共 10 题,10.0 分)

41. (填空题, 1.0 分) [填空题]在 MySQL 中,创建视图需要使用create (   )语句。

我的答案:

(1) view

正确答案:

(1) view;

答案解析:

42. (填空题, 1.0 分) [填空题]在存储过程中,用于定义变量的关键字是(   )。

我的答案:

(1) declare

正确答案:

(1) declare;

答案解析:

43. (填空题, 1.0 分) [填空题]MySQL 中用于实现事务提交的语句是(   )语句。

我的答案:

(1) commit

正确答案:

(1) commit;

答案解析:

44. (填空题, 1.0 分) [填空题]MySQL 中提供了(   )关键字,该关键字可以判断两个字符串是否相匹配,通常用它来实现模糊查询。

我的答案:

(1) like

正确答案:

(1) like;

答案解析:

45. (填空题, 1.0 分) [填空题]MySQL 是一种(   )(多用户、单用户)的数据库管理系统。

我的答案:

(1) 多用户

正确答案:

(1) 多用户;

答案解析:

46. (填空题, 1.0 分) [填空题]数据表中的字段默认值是通过(   )关键字定义的。

我的答案:

(1) default

正确答案:

(1) default;DEFAULT

答案解析:

47. (填空题, 1.0 分) [填空题]MySQL 中的用户分为(   )用户和普通用户。

我的答案:

(1) root

正确答案:

(1) root;

答案解析:

48. (填空题, 1.0 分) [填空题]在 MySQL 中,除了使用 CREATE OR REPLACE VIEW 语句修改视图外,还可以使用(   )语句来修改视图。

我的答案:

(1) alter

正确答案:

(1) alter;

答案解析:

49. (填空题, 1.0 分) [填空题]在 MySQL 的整数类型中,占用字节数最大的类型是(   )。

我的答案:

(1) bigint

正确答案:

(1) bigint;

答案解析:

50. (填空题, 1.0 分) [填空题]在 MySQL 中,除了使用 CREATE OR REPLACE VIEW 语句修改视图外,还可以使用(   )语句来修改视图。

我的答案:

(1) alter

正确答案:

(1) alter;

答案解析:

选择题

1、SQL语言具有数据操作功能,SQL语言的一次查询的结果是一个D

A)数据项

B)记录

C)元组

D)表

2、如果学生表st是使用以下SQL语句创建的:

CREATE TABLE st (sno CHAR(4) not null,sn CHAR(8),sex CHAR(2),age INT)

下面的SQL语句中可以正确执行的是_A

A) INSERT INTO st(sno,sex,age) VALUES('s9','男',17)

B) INSERT INTO st(sn,sex,age)VALUES(”李安齐”,”男”,20)

C) INSERT INTO st(sex,age)VALUES("男”,20)

D) INSERT INTO st(sno,sn)VALUES("s9",”安齐”,16)

3、学生表中st(学号,姓名,性别,年龄)

删除其中的“年龄”字段的SQL语句是_A

A) ALTER TABLE st DROP 年龄

B)DROP 年龄 FROM st

C) ALTER TABLE st DELETE 年龄

D)DELETE年龄 FROM st

4、在SQL Server2005中,通配符只有在D子句中才有意义,否则会被当作普通字符使用。

A)COUNT

B) SELECT

C) SUM

D)LIKE

5、SQL Server 2005中,主数据库文件的扩展名为A

A).mdf

B).dbf

C).Idf

D).ndf

6、SQL语句中删除表的命令是C

A) DELETE TABLE

B) DELETE DBF

D)DROP DBF

C)DROP TABLE

7、下面哪一个不是SQL SERVER 2005的系统数据库?C

A) master

B) tempdb

C)tx1

D)msdb

8、下面哪一个是SQL SERVER 2005事务日志文件的后缀名?D

A)mdf

B) ndf

C) doc

D)ldf

1

9、在数据库设计中,将ER图转换成关系数据模型的过程属于(B)

A.需求分析阶段 B.逻辑设计阶段 C.概念设计阶段 D.物理设计阶段

10、SQL语言的标准库函数COUNT、SUM、AVG、MAX和MIN等,不允许出现在下列哪个子句中D

A)SELECT

B)HAVING

C) GROUP

D)WHERE

11、SQL语言中建立唯一性索引的命令是C

A) CREATE INDEX 索引名 ON 基本表名(属性名)

B)CREATE INDEX UNIQUE 索引名 ON 基本表名(属性名)

C)CREATE UNIQUE INDEX 索引名 ON 基本表名(属性名)

D) CREATE DISTINCT INDEX 索引名 ON 基本表名(属性名)

12、要想用T-SQL语句从学生表中查询学号的前四个字符为“2004”的学生,条件表达式为A

A)学号 LIKE'2004%'

B)学号='2004%

C)学号 LIKE'2004*

D)学号='2004*'

13、下面哪一个不是SQL SERVER 2005常用的数据类型?A

A) integer

B) bit

C) datetime

D)

varchar

14、SQL中的视图提高了数据库系统的(D)

A.完整性 B.并发控制 C.隔离性 D.安全性

15、数据库中数据的正确性、有效性和相容性称为(C)

A、恢复B、并发控制 C、完整性 D、安全性

16、SQL中的主键子句和外键子句属于DBS的(A)

A、完整性措施B、安全性措施C、并发性措施 D、恢复措施

17、视图的概念具有很多优点,下面哪一个不是它的优点(C)

A、视图对于数据库的重构造提供了一定程度的逻辑独立性

B、简化了用户观点

C、视图机制方便了不同的用户以同样的方式看待同一数据

D、视图机制对机密数据提供了自动的安全保护功能

18、在创建数据库时,系统自动将(C)系统数据库中的所有用户定义的对象都复制到数据库中。

A.Master

B. Msdb

C. Model

D. Tempdb

19、SQL Serer 2008 R2的系统数据库是(D)。

A. Master, Tempdb,AdventureWorks, Msdb, Resource

B. Master, Tempdb,Model, Librar,Resource

C. Master, Northwind, Model, Msdb,Resource

MTMMR

D. Master, Tempdb, Model, Msdb,Resource

20、使用T-SQL创建表的语句是(B)。

A. DELETE TABLE

B. CREATE TABLE

C. ADD TABLE

D. DROP TABLE

21、在T-SQL中,关于NULL值叙述正确选项是(D)。

A.NULL 表示空格

B. NULL表示0

C. NULL既可以表示0,也可以表示是空格

D.NULL 表示空值

22、为数据表创建索引的目的是(A)

A.提高查询的检索性能 B.创建唯一索引

C.创建主键

D.归类

23、可以在创建表时用(C)两种方法来创建唯一索引。

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

B. CREATE TABLE, CREATE INDEX

C.设置主键约束,CREATE INDEX

D.以上都可以

24、SQL Server的字符型系统数据类型主要包括(B)。

A. int、money、char

B. char、varchar、text

C.datetime、binary、int

D. char、varchar、int

25、字符串常量使用(A)作为定界符。

A.单引号B.双引号C.方括号D.花括号

26、表达式'123'+'456'的结果是(C)。

A. 579'

B. 579 C. '123456'

D. '123'

27、下列函数中,返回值数据类型为int的是(B)。

A. LEFT

B.LEN

C .LTRIM

D. SUNSTRING

28、关系数据表的关键字可由(D)列属性组成

A.一个

B.两个

C.多个

D.一个或多个

29、下面是有关主键和外键之间关系的描述,请问哪些描述是正确的(A)。

A.一个表中最多只能有一个主键约束,多个外键约束。

B.一个表中最多只能有一个外键约束,一个主键约束。

C.在定义主键外键时,应该首先定义主键约束,然后定义外键约束。

D.在定义主键外键时,应该首先定义外键约束,然后定义主键约束。

30、【表设计器】的“允许空”单元格用于设置该列是否可输入空值,实际上就是创建该列的(C)约束。

A.主键

B.外键

C.NULL

D. CHECK

31、可使用下列操作中的(D)为字段输入NULL值。

A.输入 NULL

B.输入<NULL>

C.将字段清空

D.按【Ctrl+O】键

32、假设列中的数据变化规律如下,请问哪一种情况可以使用IDENTITY列定义(A)。

A.1,2,3,4,5···

B. 10,20,30,40,50···

C.1,1,2,3,5,8,13,21···

D.2,4,6,8,10···

33、关于索引描述错误的是以下的哪一项?(A)

A.表中的任何数据列都可以添加索引

B.创建索引的列最好不要含有许多重复的值

C.一般不给很少使用的列添加索引

D.并不是数据库中的聚集索引越多搜索效率就越高

34、以下哪种情况应尽量创建索引(A)。

A. 在WHERE子句中出现频率较高的列

B. 具有很多NULL值的列

C. 记录较少的基本表

D.需要更新频繁的基本表

35、在一个表上,最多可以定义多少个聚簇索引(A)。

A.1

B.2

C.3

D.多个

36、在查看关系图内容时,下面操作不能实现的是(C)。

A.调整数据表大小

B.调整数据表位置

C.自动排列数据表

D.自定义数据表显示比例

37、对于DROPTABLE命令的解释正确的是(B)

A.删除表里的数据,保留表的数据结构

B.删除表里的数据,同时删除了表的数据结构

C.保留数据,删除表的数据结构

D.删除此表,并删除数据库里所有与此表有关联的表

38、CREATE TABLE 语句(C)。

A.必须在数据表名称中指定表所属的数据库

B.必须指明数据表的所有者

C.指定的所有者和表名称组合起来在数据库中必须唯一

D.省略数据表名称时,则自动创建一个本地临时表

39、下列叙述错误的是(C)。

A. ALTER TABLE 语句可以添加字段

B. ALTER TABLE 语句可以删除字段

C. ALTER TABLE 语句可以修改字段名称

D. ALTER TABLE 语句可以修改字段数据类型

40、ALTER TABLE 语句可以(A)。

A.同时修改字段数据类型和长度

B.修改计算列

C.在添加字段时创建该字段的约束

D.同时删除字段和字段约束

41、下面关于 UPDATE 语句错误的是(D)。

A.可以使用 DEFAULT 关键字将字段设置为默认值

B.可以使用NULL 关键字将字段设置为空值

C.可使用 UPDATE 语句同时修改多行

D.如果UPDATE 语句中没有指定搜索条件,则默认只能修改第一行

42、如果表创建唯一索引后SQL Server将禁止(B)语句向表中添加重复的键值行。

A. INSERT B. INSERT或UPDATE

C. UPDATE

D. ADD

43、查询语句“SELECT name,sex,birthday FROM human”返回(C)列。

A.1

B.2

C.3

D. 4

44、语句“SELET COUNT(*)FROM human”返回(A)行。

A.1

B.2

C.3

D.4

45、假设数据表“test1”中有10条数据行,可获得最前面两条数据行的语句为(B)。

A. SELECT 2*FROM test1

B. SELECT TOP 2* FROM test1

C. SELECT PERCENT 2*FROM test1

D. SELECT PERCENT 20*FROM test1

46、下面关于查询语句中 ORDER BY 子句使用正确的是(C)。

A.如果未指定排序列,则默认按递增排序

B.数据表的列都可用于排序(各种类型)

C.如果在SELECT子句中使用了DISTINCT 关键字,则排序列必须出现在查询结果中

D.联合查询不允许使用 ORDER BY 子句

47、在T-SQL 语法中,SELECT 查询语句的子句有很多个,但至少包括的子句是(B)

A. SELECT, INTO

B. SELECT,FROM

C. SELECT,GROUP

D.仅 SELECT

48、在T-SQL语法中,使用关键字(A)可以把重复行屏蔽

A. DISTINCT

B. UNION

C. ALL

D. TOP

49、在T-SQL语法中,可以把重复行屏蔽,将多个查询结果返回一个结果集合的运算符是(B)

A. JOIN

B. UNION

C. INTO

D.LIKE

50、在T-SQL 语法中,如果在SELECT 语句中使用聚合函数(列函数)进行分组统计或汇总时,一定在后面使用(A)

A. GROUP BY B. COMPUTE BY C. HAVING

D. COMPUTE

51、在T-SQL中,与NOTIN等价的操作符是(D)

A.= S O M E

B.\Leftrightarrow S O M E

C.= A L L

D.\Leftrightarrow A L L

52、下列关于执行查询叙述正确的是(C)

A.如果没有选中的命令,则只执行最前面的第一条命令

B.如果有多条命令选择,则只执行选中命令中的第一条命令

C.如果查询中有多条命令有输出,则按顺序显示所有结果

D.都正确

53、下列关于查询结果错误的是(C)

A.查询结果可以显示在表格中

B.查询结果可以按文本方式显示

C.以文本和表格显示的查询结果在保存时,其文件格式不同

D.不管以那种方式查看,查询结果都会显示在查询结果窗口中

54、设A、B两个数据表的记录数分别为3和4,对两个表执行交叉联接查询,查询结果中最多可获得(C)条记录

A. 3

B.4

C.12

D. 81

55、如果查询的 SELECT 子句为SELECTA,B,C*D,则不能使用的GROUP By 子句是(D)

A. GROUP BY A

B. GROUP BY A,B

C. GROUP BY A,B,C*D

D.GROUP BY A,B,C,D

56、T-SQL中,下列操作不正确的是(D)

A. AGE IS NOT NULL

B. NOT(AGE IS NULL)

C. SNAME='王五”

D.SNAME='王%'

57、有关SELECT colA colB FROM table-name 语句,请问下面哪一种说法正确的(A)

A.该语句不能正常执行,因为出现了语法错误。

B.该语句可以正常执行,其中colA是colB的别名。

C.该语句可以正常执行,其中colB是colA的别名。

D.该语句可以正常执行,colA和colB两个不同的列名。

58、下面是有关分组技术的描述,请问哪一种描述是正确的(B)

A.SELEGT子句中的非合计列必须出现在GROUPBY子句中。

B. SELEGT子句中的非合计列可以不出现在GROUPBY子句中。

C.SELEGT子句中的合计列必须出现在GROUPBY子句中。

D.SELEGT子句中的合计列可以不出现在GROUPBY子句中。

59、由EXISTS引出的子查询,其目标列表达式通常都用(C),因为带EXISTS的子查询只返回真值或假值

A.%

B.?

C.*

D.

60、不允许对视图中的计算列进行修改,也不允许对视图定义中包含有统计函数或(B)子句的视图进行修改和插入操作

A. ORDER BY

B. GROUP BY

C. HAVING

D. SELECT

70、下面语句(B)是正确的

A.视图是一种常用的数据库对象,使用视图不可以简化数据操作。

B. 使用视图可以提高数据库的安全性。

C.视图结构与SELECT子句所返回的结果集结构相同,但视图中的列是由算术表达式、函数或常量等产生的计算列时,必须在创建视图时指出列名。

D.DELETE VIEW 语句是删除视图

71、下列(D)功能是视图可以实现的

A.将用户限定在表中的特定行上

B.将用户限定在特定列上

C.将多个表中的列连接起来

D.将多个数据库的视图连接起来(分布式分区)

72、下列(C)选项是在使用视图修改数据时需要注意的

A.在一个UPDATE语句中修改的字段必须属于同一个基表

B.一次就能修改多个视图基表

C.图中的所有列的修改必须遵守视图基表中所定义的各种数据完整性约束

D.可以对视图中的计算列进行修改

73、下面是有关视图特征的描述,请问那些描述是正确的

B.C

A.ORDER BY子句可以出现在CREATE VIEW语句中。

B,ORDER BY 子句不可以出现在CREATE VIEW 语句中。

C.GROUPBY子句可以不出现在CREATE VIEW语句中。

D.GROUP BY子句不可以出现在CREATE VIEW语句中。

一、选择题

构成DBS有

(A)DB、DBMS、DBA、APP、用户

(B)DB、DBMS、DBA

(C)DBMS、DBA、APP、用户

(D)DB

DB、DBMS和DBS三者之间的关系是(B)

(A)DB包括DBMS和DBS

(B)DBS包括DB和DBMS

(C)DBMS包括DB和DBS

(D)不能相互包括

E-R图是数据库设计的工具之一它适用干建立数据库的(A)

(A)概念模型

(B)逻辑模型

(C)结构模型

(D)物理模型

SELECT语句使用(A)可以把检索结果中的重复行屏蔽掉。

(A) DISTINCT

(B) UNION

(C) UNIQUE

(D) Top

SQL语言的一次查询的结果是一个(D)

(A)数据项

(B)记录

(C)元组

(D)表

SQL语言具有两种使用方式,分别称为交互式SQL和(C)

(A)编译式SQL

(B)解释式SQL

(C)嵌入式SQL

(D)过程化SQL

SQL语言是(C)语言

(A)层次数据库

(B)网络数据库

(C)关系数据库

(D)非数据库

SQL语言是关系数据库的标准语言,它是(B)

(A)过程化的

(B)非过程化的

(C)格式化的

(D)导航式的

X→Y,当下列(C)成立时,称为非平凡函数依旅。

(A)X非空

(B)Y→X

(C)Yd X

(D)YEX

按所使用的数据模型来分.数据库可分为(A)三种类型.

(A)层次、关系和网状

(B)网状、环状和链状

(C)大型、中型和小型

(D)独享、共享和分时

保护数据库.防止未经授权的或不合法的使用适成的数据泄露、更改破坏。这是指数据库的(A)

(A)安全性

(B)完整性

(C)并发控制

(D)恢复

不属于E-R模型中的概念是D

(A)实体

(B)属性

(C)联系

(D)数据表

从E-R模型向关系模型转换时,一个M:N联系转换为关系模式,该关系模式的码是(C)

(A)N端实体的码

(B)M端实体的码

(C)M端实体的码与N端实体的码的组合

(D)非M端非N端实体码的其它属性

从一个数据库文件中取出满足某个条件的所有记录的操作是(A)

(A)选择

(B)连接

(C)投影

(D)复制

当关系模式R(A.B)已属于3NF,下列说法中(B)是正确的.

(A)它一定消除了插入异常和删除异常

(B)仍存在一定的插入和删除异常

(C)一定属于BCNF

(D)A和C都是

根据关系数据基于的数据模型,对关系模型特征判断正确的是(B)

(A)只能表示实体之间的一对多关系。

(B)以二维表格结构来保存数据,在关系表中不允许有重复行存在。

(C)能体现一对多、多对多的关系,但不能体现一对一的关系。

(D)关系模型数据库是数据库发展的最初阶段。

在关系型数据库中,DBMS利用(B)来自动保持一个关系模式中的元组不重复

(A) SELECT

(B)码

(C)BCNF

(D)3NF

根据数据库规范化理论,下面命题中正确的是(D)

(A)若RE2NF,则RE3NF

(B)若RE1NF,则R BCNF

(C)若RE3NF,则REBCNF

(D)若REBCNF,则RE3NF

关系规范化理论中的播入异常是指(D)

(A)不该删除的数据被删除

(B)不该插入的数据被插入

(C)应该删除的数据不能被删除

(D)应该插入的数据不能被插入

关系规范化中的删除操作异常是指(A)

(A)不该删除的数据被删除

(B)不该插入的数据被插入

(C)应该删除的数据不能被删除

(D)应该插入的数据不能被插入

关系规范化理论中的播入异常的原因是(D)

(A)不该插入的数据的码重复

(B)应该插入的数据的码重复

(C)不该插入的数据的码不全

(D)应该插入的数据的码不全

关系模式中,满足2NF的模式,(D)

(A)可能是1NF

(B)必定是BCNF

(C)必定是3NF

(D)必定是1NF

关系数据库的规范化理论指出.关系数据库中的关系应满足一定的要求,起码的要求是达到1NF,即满足(D)

(A)每个非主属性都完全依赖于主属性

(B)主属性唯一标识关系中的元组

(C)关系中的元组不可重复

(D)每个属性都是不可再分的

关系数据库规范化是为解决关系数据库中(A)问题而引入的。

(A)插入、删除异常和数据冗余

(B)提高查询速度

(C)减少数据操作的复杂性

(D)保证数据的安全性

关系数据库中的码是指(D)

(A)能唯一决定关系的字段

(B)不可改动的专用保留字

(C)关系的很重要的字段

(D)能唯一标识元组的一个属性或一组属性

关系数据模型是目前最重要的一种数据模型.它的三个要素分别是(B)

(A)实体完整性、参照完整性、用户自定义完整性

(B)数据结构、关系操作、完整性约束

(C)数据增加、数据修改、数据查询

(0)外模式、模式、内模式

关系运算以关系代数为理论基础.关系代数的最基本操作是并、差(C)

(A)投影、连接、规范化(B)连接、选择、规范化

(C)选择、投影、连接

(D)选择、投影、规范化

37、关于数据库设计的正确描述是(B)

(A)进行数据模型的设计

(B)在DBMS的支持下,进行数据模型和应用程序设计

(C)开发应用程序

(D)设计开发DBMS

规范化的关系模式的任何属性(A)

(A)不可再分

(B)可以再分

(C)命名在关系模式上可以不唯一

(D)上述都不正确

规范化过程主要为克服数据库逻辑结构中的插入异常、删除异常以及(C)缺陷。

(A)数据的不一致性

(B)结构不合理

(C)冗余度大

(D)数据丢失

规范化理论是关系数据库进行逻辑设计的理论依据,根据这个理论,关系数据库中的关系必须满足,其每一属性都是(B)

(A)互不相关的

(B)不可分解的

(C)长度可变的

(D)互相关联的

规范化理论可以消除数据库的(A)

(A)插入异常、删除异常

(B)插入异常

(C)删除异常

(D)查询异常

规范化理论建立在()的基础上

(A)DBMS

(B) SELECT

(C)函数依赖

(D)数据库

候选码中的属性称为(B)

(A)非主属性

(B)主属性

(C)复合属性

(D)关健属性

假设关系模式R(A.B)E3NF,下列说法中正确的是(B)。

(A)R一定消除了插入和删除异常

(B)R仍可能存在一定的插入和删除异常

(C)R一定属于BCNF

(D)R一定存在插入和删除异常

将一个关系从2NF规范到3NF,目的是消除(B)

(A)非主属性对码的部分函数依赖

(B)非主属性对码的传递函数依赖

(C)主属性对码的部分和传递函数依赖

(D)非平凡的函数依赖

如果想找出关系R上属性A的值为空的那些元组,则条件子句应该为(C)

(A)WHERE A=NULL

(B)WHEREA = N U L L

(C) WHERE A IS NULL

(D) WHERE A NOT IS NULL

如果一个关系符合3NF,则它(A)

(A)必然符合2NF

(B)必然符合4NF

(C)必然不符合2NF(D)必然符合BCNF

如果有两个事务同时对数据库中同一数据进行操作,不会引起冲突的操作是(D

(A)一个是DELETE.一个是SELECT

(B)一个是SELECT.一个是DELETE

(C)两个都是UPDATE

(D)两个都是SELECT

若关系模式RE3NF,则下面最正确的说法是(C)

(A)某个非主属性不传递依赖于码

(B)某个非主属性不部分依赖于码

(C)所有非主属性都不传递依赖于码

(D)所有非主属性都不部分依赖于码

若关系模式R中的属性全是主属性,则R的最高范式等级至少是(C)

(A)1NF

(B)2NF

(C)3NF

(D)BCNF

若关系模式R只有一个候选码且所有属性全是主属性,则R的最高范式等级至少是(C)

(A)1NF

(B)2NF

(C)3NF

(D)BCNF

设学生关系S(SNO,SNAME,SSEX,SAGE,SDEPT)的主健为SNO,学生选课关系SC(SNO,CNO,SCORE)的主健为SNO和CNO,关系R(SNO,CNO,SSEX,SAGE,SDEPT,SCORE)的主健为SNO和CNO,关系R满足(A)

(A)1NF(B)2NF(C)3NF(D)都不对

设学生关系S(SNO,SNAME,SSEX,SAGE,SDEPT)的主健为SNO,课程关系C(CNO,

CNAME)的主键为CNO,学生选课关系SC(SNO,CNO,SCORE)的主健为SNO和CNO,则这三个关系都(D)

(A)属于1NF不属于2NF

(B)属于2NF不属于3NF

(C)属于3NF不属于BCNF

(D)属于BCNF

设学生关系模式为:学生(学号.姓名.年龄.性别.平均成绩.专业).则该关系模式的主键是(C)

(A)姓名

(B)学号,姓名

(C)学号

(D)学号,姓名,年龄

设有关系W(工号,姓名,工种,定额),将其规范化到第三范式正确的答案是(C)

(A)W1(工号,姓名),WZ(工种,定额)

(B)W1(工号,工种,定额),WZ(工号,姓名)

(C)wi(工号.姓名.工种),wZ(工种,定额)

(D)以上都不对

设有关系WORK(ENO,CNO,PAY),主码为(ENO,CNO),正确的是(D)

(A)只有ENO不能取空值

(B)只有CNO不能取空值

(C)只有PAY不能取空值

(D)ENO与CNO都不能取空值

设有关系模式R(S,D,M).其函数依赖集F(S→D,D→M),则关系模式R的规范化程度最高达到(B)

(A)1NF(B)2NF(C)3NF(D)都不正确

数据库的概念模型独立于(A)

(A)具体的机器和DBMS(B)E-R图(C)信息世界 (D)现实世界

数据库概念设计的E-R方法中,用属性描述实体的特征,属性在E-R图中用(D)表示属性

(A)矩形

(B)四边形

(C)菱形

(D)椭圆形

关子

数据库完整性约束的建立需要使用DBMS报供的(A)

矢体

(A)数据定义语言

(B)数据操纵语言

(C)数据查询语言

(D)数据控制语言

数据库系统的数据独立性体现在(B)

(A)不会因为数据的变化而影响到应用程序

(B)不会因为数据存储结构与数据逻辑结构的变化而影响应用程序

(C)不会因为存储策略的变化而影响存储结构

(D)不会因为某些存储结构的变化而影响其他的存储结构

数据库系统是在(A)的基础上发展起来的。

(A)文件系统(B)应用程序系统(C)数据库管理系统(D)编译系统

数据库系统与文件系统的主要区别是(B)

(A)数据库系统复杂.而文件系统简单。

(B)文件系统不能解决数据冗余和数据独立性间题,而数据库系统可以解决。

(C)文件系统只能管理程序文件.而数据库系统能够管理各种类型的文件。

(D)文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量。

为了考虑安全性,每个部门的领导只能存取本部门员工的档案,为此DBA应创建相应的(C)

(A)表(table)

(B)索引(index)

(C)视图(view)

(D)游标(cursor)

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

(A)提高查询的检索速度(B)创建唯一索引(C)创建主健(D)分类下列关于“数据库三级模式结构”的叙述中,哪一条是不正确的?(C)

(A)视图是外模式

(B)模式是数据库中全体数据的逻辑结构和特征的描述

()一个数据库可以有多个逻辑模式

D)一个数据库只有一个内模式

下列关干SQL语言中索引.(Index)的叙述,哪一条是不正确的?(A)

(A)索引是外模式

(B)一个基本表上可以创建多个索引

(C)索引可以加快查询的执行速度

(D)系统在存取数据时会白动选择合适的索引作为存取路径下列关于视图的说法中错误的是(C)

(A)视图是从一个或多个基本表导出的表,它是虚表

(B)视图可以被用来对无权用户屏蔽数据

シライ(C)视图一经定义就可以进行任意的插入和删除操作

(D)视图可以用来定义新的视图

下列哪种关系运算不要求R和S具有相同的属性(D)

(A)RUS (B) RNS

笛卡?

(C)R-S (D)R

RXS

下列四顶中.不属于数据库系统特点的是(C)

(A)数据共享

(B)数据完整性

(C)数据冗余度高

(D)数据独立性高

下面关于自然连接与等值连接的各个叙述中,不正确的是(B)

(A)自然连接是一种特殊的等值连接

(B)自然连接要求两个关系中具有相同的属性组,而等值连接不必

(C)两种连接都可以只用笛卡尔积和选择运算导出

(D)自然连接要在结果中去掉重复的属性,而等值连接则不必

下面哪个不是数据库系统必须提供的数据控制功能(B)

(A)安全性(B)可移植性

(C)完整性(D)并发控制

下述SQL命令的短语中,不是定义属性上约束条件的是(D)

(A)NOT NULL短语(B)UNIQUE 短语(C)CHECK短语(D)HAVING短语

现要查找缺少学习成绩G的学生学号(SNO)和课程号(CNO),相应的SQL语句应为SELECT SNO, CNO

FROM SC

WHERE(D)

(A)G=0

(B)G < 0

(C)G = N U L L

(D)G IS NULL

消除了非主属性对码的部分函数依赖的1NF的关系模式必定是(B)

(A)1NF(B)2NF (C) 3NF (D)BCNF

下列选项中关于视图的说法错误的是(B)

(A)视图是一种虚拟表

(B)视图中也保存有数据

(C)视图也可由视图派生出来

(D)视图的内容来源于一个SQL的SELECT查询

下列选项中删除表的语句是(A)

(A)DROP (B) ALTER (C) UPDATE (D) DELETE

学生表s(id,name,sex,age,dept_id,deptname).存在的函数依赖是id→name、sex、age、dept_id,dept_id→dept_name,S满足(B)

(A)1NF(B)2NF(C)3NF(D)都不正确

要修改表的结构.应使用SQL语言的命令(C)

(A)UPDATE TABLE

(B) MODIFY TABLE

(C)ALTER TABLE (D) CHANGE TABLE

一个关系只有一个(D)

12

(A)候选码

(B)编码

(C)密码

(D)主码

已知关系R和S如下表所示:试对R和S进行交运算.其结果的元组行数应是(B)

R

A

B

C

S

A

B

C

a1

a _ { 2 }

f

g

a _ { 2 }

b _ { 1 }

a3

f

g

(A)0(B)1(C)4(D)6

以下哪一条属于关系数据库的规范化理论要解决的问题?(A)

(A)如何构造合适的数据库逻辑结构

(B)如何构造合适的数据库物理结构

(C)如何构造合适的应用程序界面

(D)如何控制不同用户的数据操作权限

有关系模式R(S,T,C,D,G),其函数依赖集:F = \{ ( S ,C ) \rightarrow T ,C \rightarrow D ,(S,C)→G,T→C)关系模式R的候选关键字(D)

(A)仅有1个,为(S,C)

(B)仅有1个,为(S,T)

SCTDG

(C)有2个,为(S,C)和(T)

STCDG

(D)有2个,为(S,C)和(S,T)

有学生关系.学生(学号,姓名,年龄).对学生关系的查询语句如下:

SELECT学号

FROM学生

WHERE年龄>20 AND姓名LIKE'%伟'

如果要提高查询速度,应该建索引的属性是(C)

(A)学号(B)姓名(C)年龄(D)(学号,姓名)

在SQL语言的SELECT语句中,对投影操作进行说明的是哪个子句(A)

(A) SELECT (B) FROM (C) WHERE (D) ORDER BY

在SQL语言中.DELETE语句的作用是(D)

(A)删除基本表(B)删除视图

(C)删除基本表和视图 (D)删除基本表或视图的元组

在SQL语言中.数值函数COUNT(列名)用干(C)

(A)计算元组个数(B)计算属性的个数

(C)对一列中的非空值计算个数(D)对一列中的非空值和空值计算个数在SQL语言中.用于测试列值非空的短语是(C)

(A) IS NOT EMPTY (B) NOT UNIQUE

(C)IS NOT NULL (D) NOT EXISTS

在关系代数的专门关系运算中,从表中取出指定的属性的操作称为(B)

(A)选择(B)投影(C)连接(D)扫描

在关系代数的专门关系运算中,从表中选出满足某种条件的元组的操作称为(A)

(A)选择(B)投影(C)连接(D)扫描

在关系代数的专门关系运算中,将两个关系中具有共同属性值的元组连接到一起构成新表的操作称为(C)

(A)选择(B)投影(C)连接(D)笛卡尔积

在关系代数中,从两个关系的笛卡尔积中选取它们属性间满足一定条件的元组的操作称为(D)

(A)并(B)选择(C)自然连接(D)连接

在关系规范化中,分解关系的基本原则是(B)

1、实现无损连接.

II、分解后的关系相互独立.

III、保持原有的依赖关系.

(A)I和II,(B)I和III;(C)I.(D)II.

在关系模式设计时,每个关系模式应对应于(A)

(A)一个实体类型或一个联系类型(B)一个实体类型加一个联系类型

(C)多个实体类型(D)多个联系类型

在关系数据库中.要求基本关系中所有的主属性上不能有空值.其遵守的约束规则是(C)

(A)数据依赖完整性规则(B)用户定义完整性规则

(C)实体完整性规则(D)上述都不正确。

在数据管理技术的发展过程中.经历了人工管理阶段、文件系统阶段和数据库系统阶段。在这几个阶段中,数据独立性最高的是(A)阶段。

(A)数据库系统(B)文件系统(C)人工管理(D)数据单独管理

在数据库的三级模式结构中.描述数据库中全体数据的全局逻辑结构和特征的是(D)

(A)外模式(B)内模式(C)存储模式(D)模式

在数据库中存储的是(C)

(A)数据(B)数据模型(C)数据以及数据之间的联系(D)信息

在数据库中可以创建和删除表、视图,可以修改表结构。这是因为数据库管理系统提供了(A)

(A)数据定义功能(B)数据操纵功能(C)数据维护功能(D)数据控制功能

在下面的数据库表中.若学生表的主码是学号,系别表的主码是系别号,用SQL语句不能完成的操作是(B)

学生表

学号

姓名

年龄

系别号

系别表

系别号

系别名称

001

李红

19

01

01

数学系

005

王明

20

01

02

中文系

006

王芳

18

02

03

计算机系

010

张强

20

03

(A)从学生表中删除行('005,'王明',20,01')

(B)将行('005','王山',19,'04')插入到学生表中

(C)将学号为'001'的年龄改为18

(D)将学号为'010'的系别号改为'04',

自然连接是构成新关系的有效方法。一般情况下,当关系R和S进行自然连接时,要求R和S含有一个或多个共有的(D)

(A)元组(B)行(C)记录(D)属性

第一章 MySQL 概述

选择:

1、根据关系模式的完整性规则,一个关系中的主键()。

A.不能由两个字段组成 B.不能成为另一个关系的外部键

C.不允许空值

D.可以取空值

正确答案是:C

你选择的答案是:未选

判题结果:x

2、若MySql默认设置为手动提交,DELETE FROM S WHERE 年龄>60语句的功能是。

A.从S表中彻底删除年龄大于60岁的记录

B.S表中年龄大于60岁的记录被加上删除标记

C.删除S表

D.删除S表的年龄列

14

正确答案是:B

你选择的答案是:未选

判题结果:x

3、用SQL的ALTER TABLE 语句修改基本表时,删除其中某个列的约束条件应使用的子句是()

A.ADD

B. DELETE

C.MODIFY

D. DROP

正确答案是:D

你选择的答案是:未选

判题结果:x

4、使用SELECT语句显示表的所有的列时,选用的符号是( )。

A.*B.[] C._D.[^]

正确答案是:A

你选择的答案是:未选

判题结果:x

5、下列语言中属于结构化查询语言的是()。

A.Java B.C C.SQL

D.C++

正确答案是:C

你选择的答案是:未选

判题结果:x

6、在SQL中,建立视图用()。

A.Create table 命令

B.Create view 命令

C.Create index 命令

D.Create proc 命令

正确答案是:B

你选择的答案是:未选

判题结果:x

7、要快速完全清空一个表,可以使用如下语句:

A.TRUNCATE TABLE

B. DELETE TABLE

C.DROP TABLE

D. CLEAR TABLE

正确答案是:A

你选择的答案是:未选

判题结果:x

8、创建视图时:

A.可以引用其它的视图

B.一个视图只能涉及一张表

C.可以替代一个基表

D.以上说法都不正确

正确答案是:A

你选择的答案是:未选

判题结果:x

9、使用ALTER TABLE修改表时,如果要修改表的名称,可以使用哪一子句?

A.CHANGE NAME

B.SET NAME

C.RENAME

D.NEW NAME

正确答案是:C

你选择的答案是:未选

判题结果:x

10、数据库信息系统的核心是。

A.数据模型

B.数据库管理系统

C.数据库

D.数据库管理员

正确答案是:C

你选择的答案是:未选

判题结果:x

11、设有部门和职员两个实体,每个职员只能属于一个部门,一个部门可以有多名职员。则部门与职员实体之间的联系类型是

A.m:n

B.1:m

15

C.m:1

D.1:1

正确答案是:B

你选择的答案是:未选

判题结果:x

12、以下哪些命令是DDL语句()

A.CREATE DATABASE命令 B. Update命令

C.SELECT 命令

D. INSERT命令

正确答案是:A

你选择的答案是:未选

判题结果:x

13、陈述A:查询的类型返回一个带有多值结果的单列用IN子句实现。

陈述B:对于是否存在数据的子查询用EXISTS实现。

关于对以上陈述的描述中,正确的是()。

A.陈述A错误,陈述B正确

B.陈述A正确,陈述B错误

C.都是错误的D.都正确

正确答案是:D

你选择的答案是:未选

判题结果:x

14、有一表:DEPT(dno,dname),如果要找出倒数第三个字母为W,并且至少包含4个字母的dname,则查询条件子句应写成.where dname like()。

A.'__W_%'

B.'%W

C.'

D.'_ { - } W _ { 0 } ^ { 0 } ,

일w--

正确答案是:B

你选择的答案是:未选

判题结果:x

15、查询结果集中将name字段显示为“姓名”,应该使用下面哪个语句?()

A.select name from authorsas 姓名

B.select au fname=姓名 fromauthors

C.select* from authors wherename=姓名

D.select name姓名fromauthors

正确答案是:D

你选择的答案是:未选

判题结果:x

16、视图是一个“虚表”,视图的构造基于()

A.基本表

B.视图

C.基本表或视图

D.数据字典

正确答案是:A

你选择的答案是:未选

判题结果:x

17、创建表时,不允许某列为空可以使用:

A.NOT NULL

B.NO NULL

C.NOT BLANK

D.NO BLANK

正确答案是:A

你选择的答案是:未选

判题结果:x

18、下列四项中,不属于数据库特点的是()。

A.数据共享

B.数据完整性

C.数据冗余很高 D.数据独立性高

正确答案是:C

你选择的答案是:未选

判题结果:x

19、E-R图是数据库设计的工具之一,它一般适用于建立数据库的。

A.概念模型

B.结构模型

C.物理模型

D逻辑模型

正确答案是:A

你选择的答案是:未选

判题结果:x

20、在SQL语句中,与表达式“仓库号 NOT IN("wwh2")"功能相同的表达式是

A.仓库号 = " W h 1 " A N D仓库号 = " w h 2 "

B.仓库号! = ^ { \prime \prime } W h 1 ^ { \prime \prime } O R 仓库号! = " W h 2 "

C.仓库号 = " W h 1 " O R仓库\frac { a } { 7 } = ^ { \prime \prime } W h 2 ^ { \prime \prime }

D.仓库号: = ^ { \prime \prime } W h 1 ^ { \prime \prime } A N D 仓库号! = " W h 2 "

正确答案是:D

你选择的答案是:未选

判题结果:x

21、在SQL中,DROP INDEX语句的作用是()

A.建立索引

B.删除索引

C.修改索引

D.更新索引

正确答案是:B

你选择的答案是:未选

判题结果:x

22、要想对表中记录分组查询,可以使用哪一子句?

A.GROUP BY

B.AS GROUP

C.GROUP AS

D.TO GROUP

正确答案是:A

你选择的答案是:未选

判题结果:x

23、MySQL是一种( )类型的数据库管理系统。

A.关系模型 B.网状模型

C.实体-关系模型 D.层次模型

正确答案是:A

你选择的答案是:未选

判题结果:x

24、储蓄所有多个储户,储户在多个储蓄所存取款,储蓄所与储户之间是()。

A.一对一的联系

B.一对多的联系

h-m

C.多对一的联系

D.多对多的联系

正确答案是:D

你选择的答案是:未选

判题结果:x

25、在SELECT语句中用于实现条件选择运算的关键字是

A.FOR

B.WHILE

C.WHERE

D.CONDITION

正确答案是:C

你选择的答案是:未选

判题结果:x

26、在SQL中,删除视图用。

A.DROP SCHEMA 命令

B.CREATE TABLE 命令

C.DROP VIEW 命令

D.DROP INDEX 命令

正确答案是:C

你选择的答案是:未选

判题结果:x

27、下列哪一种连接保证包含第一个表中的所有行和第二个表中的所有匹配行()。

A.LEFT OUTER JOIN

B.RIGHT OUTER JOIN

C.INNER JOIN

D.JOIN

正确答案是:A

你选择的答案是:未选

判题结果:x

28、SQL查询中去除重复数据的是()

A. ORDER BY

B. GROUP BY

C. DISTINCT

D. DESC

正确答案是:C

你选择的答案是:未选

判题结果:x

第二章 数据库操作

选择:

1、你需要修改 STUDENTS 表在STUDENT_ID列上增加一个PK约束,当前此表为空表,下面语句正确的是?

A. ALTER TABLE students ADD PRIMARY KEY student_id;

B.ALTER TABLE students ADD CONSTRAINT PRIMARY KEY (student_id);

C. ALTER TABLE students ADD CONSTRAINT stud_id_pk PRIMARY KEY student_id;

D.ALTER TABLE students ADD CONSTRAINT stud_id_pk PRIMARY KEY (student_id);

正确答案是:D

你选择的答案是:未选

判题结果:x

2、下列哪类命令在未提交前可以通过ROLLBACK命令进行回退()

A.DCL

B.DDL

C.DML

D.DQL

正确答案是:C

你选择的答案是:未选

判题结果:x

3、评估SQL语句:

SELECT ROUND(45.953,-1)FROM dual;

该语句的显示结果?

44.951

A.46

B.45.93

C.50

D.45.9

正确答案是:C

你选择的答案是:未选

判题结果:x

4、()函数通常用来计算累计排名、移动平均数和报表聚合等。

A.汇总

B.分析

C.分组

D.单行

正确答案是:A

你选择的答案是:未选

判题结果:x

5、()SQL语句将为计算列SAL*12生成别名Annual Salary

A. SELECT ename,sal*12 'Annual Salary' FROM emp;

B. SELECT ename,sal*12 “Annual Salary”FROM emp;

C. SELECT ename,sal*12 AS Annual Salary FROM emp;

D. SELECT ename,sal*12 AS INITCAP("Annual Salary”)FROM emp;

正确答案是:A

你选择的答案是:未选

判题结果:x

6、分析以下的SQL命令:

SELECT 图书.书号,图书.书名,借阅.读者号 FROM 借阅 RIGHT JOIN 图书 ON 图书.书号=借阅.书号

如下描述正确的是()。

A 将没借书的读者信息也查出来

B 只查出被借走的图书信息

C 将没被借走的图书信息也查出来

D 只查出被借走图书的书号和书名

正确答案是:C

你选择的答案是:未选

判题结果:x

1-

100

Sal 列存储的是月薪,现在要求查询语句能够显示每月增加100元补贴后的年薪,上面的语句如何更改?

A.不需要做任何修改

B. SELECT ename, sal,12*(sal+100)FROM emp;

C. SELECT ename, sal, (12*sal)+100 FROM emp;

D.SELECT ename,sal+100,*12 FROM emp;

正确答案是:B

你选择的答案是:未选

判题结果:x

8、用于显示表结构的命令是什么?

A.DESC

B.HOST C.SELECT D.DIR

正确答案是:A

你选择的答案是:未选

判题结果:x

9、下列SELECT语句用于查询表中email列为空值的行,哪个是正确的?

A.SELECT ename,sal,email from emp where email=0;

B.SELECT ename,sal,email from emp where email='';

C. SELECT ename,sal,email from emp where email is null;

D. SELECT ename,sal,email from emp where email is not null;

正确答案是:C

你选择的答案是:未选

判题结果:x

10、关于约束,下列哪些描述是正确的?()

A.UNIQUE约束不允许空值

B.在创建PK或UNIQUE 约束时默认会同进创建唯一性索引

C.PK 约束允许列中有一个空值

D.NOT NULL 约束是确保列中会出现空值

正确答案是:B

你选择的答案是:未选

判题结果:x

11、CREATE,DROP,ALTER等命令属于下列哪类命令()

A.DCL

B.DDL

C.DML

D.DQL

正确答案是:B

你选择的答案是:未选

判题结果:x

12、INSERT,UPDATE,DELETE等命令属于下列哪类命令()

A.DCL

B.DDL

C.DML

D.DQL

正确答案是:C

你选择的答案是:未选

判题结果:x

13、评估SQL语句

SELECT ROUND(TRUNCATE(MOD(1600,10),-1),2)FROM dual;语句执行完成后的结果是?

A.0

B.1

C.0.00

D.发生错误

正确答案是:A

你选择的答案是:未选

判题结果:x

第三章 数据表操作

选择:

1、若需要更新居住地为亚特兰大(Atlanta)的雇员的区域代码。考虑下面的部分 UPDATE语句:

UPDATE 雇员 SET 区域代码=770

应在 UPDATE 语句中包括以下哪个子句才能得到所需结果?

A.UPDATE 城市=Atlanta;

B. SET 城市='Atlanta';

C.WHERE 城市='Atlanta';

D. LIKE'At%';

正确答案是:C

你选择的答案是:未选

判题结果:x

2、MySql数据库中,下面()可以作为有效的列名。

A. Column

B. 123_NUM

C. NUM_#123

D. #NUM123

正确答案是:C

你选择的答案是:未选

判题结果:x

3、MySql数据库中,以下()命令可以删除整个表中的数据,并且无法回滚。

A.drop

B.delete

C. truncate

D.cascade

正确答案是:C

你选择的答案是:未选

判题结果:x

4、若MySql设置默认提交方式为手动提交,第一步用DELETE命令删除了表A中的数据(但并没有提交),

第二步试图创建了一个表B,但由于权限不足,表B并没有创建成功.

第三步执行了一个;BOLLBACK回滚操作.请问以下叙述正确的是()

环A.表A中的数据被恢复回来

B.表A中的数据被彻底从数据库中删除

C.表A中的数据被移至一个临时的表中

D.表A中的数据将处于一个不确定的状态

正确答案是:A

你选择的答案是:未选

判题结果:x

5、若MySql设置默认提交方式为手动提交,第一步执行了DELETE命令,删除了某表中的一条记录.第二步执行了COMMIT命令.

最后又执行了ROLLBACK命令.请问以下叙述正确的是()

A.被删除的记录又被恢复回来,仍然存放在数据库的表中

B.被删除的记录彻底从数据库中被删除掉了

C.被删除的记录只是当前用户看不到了,而其它用户还能看到

D.被删除的记录当前用户可以看到,而其它用户却看不到了

正确答案是:B

你选择的答案是:未选

判题结果:x

6、若MySql设置默认提交方式为手动提交,第一步用DELETE命令删除了表A中的数据(但并没有提交),第二步成功创建了一个表B,

第三步执行了一个ROLLBACK回滚操作,请问以下叙述正确的是()

20

A.表A中的数据被恢复回来,创建的表B被从数据库中被删除,恢复为未建表之前的状态没有

B.表A中的数据被恢复回来,表B被创建在数据库中.

C.表A中的数据被彻底从数据库中删除,但表B被从数据库中被删除,恢复为未建表之前的状态

D.表A中的数据被彻底从数据库中删除,表B被创建在数据库中.

正确答案是:B

你选择的答案是:未选

判题结果:x

7、若想要修改一个表的结构,应该用以下哪个命令()

A.ALTER TABLE

B.DEFINE TABLE

C. MODIFY TABLE

D.REBUILD TABLE

正确答案是:A

你选择的答案是:未选

判题结果:x

8、以下对于事务的叙述,比较全面的是()

A.事务中的操作是一个整体,要成功都成功,要失败都失败

B.事务可以把所操作的数据库由一个状态转变到另一个状态

C.事务在提交之前,其它事务看不到它对数据库的影响

D.以上所述都是正确的

正确答案是:D

你选择的答案是:未选

判题结果:x

9、对于MySql数据库,设计用户表时,家庭住址字段最好采用下面的哪个数据类型进行存储

A.CHAR

B.CHAR2

C.VARCHAR

D.VARCHAR2

正确答案是:C

你选择的答案是:未选

判题结果:x

10、假定有一张表用户表users,其中一身份证字段ID_card。为了维护数据的完整性,在设计数据库时,最好对ID_card字段添加约束,请问应该添加什么约束()

A. primary key B. check C. default

D. not null

正确答案是:A

你选择的答案是:未选

判题结果:x

11、以下哪个选项不是有效的MySql约束类型?( )

A.UNIQUE

B.NONUNIQUE

C.CHECK

D.PRIMARY KEY

正确答案是:B

你选择的答案是:未选

判题结果:x

12、有数据”test”分别存放到char(10)和varchar2(10)类型的字段中,其实际存储长度为

A.10

10

B.4

4

C.10

4

D.4

10

正确答案是:C

你选择的答案是:未选

判题结果:x

13、关于表的主键,说法正确的是()。

A.主键字段最多只能建立在一个字段上

21

B.主键字段的值可以重复

C.主键字段的值能为Null

D.主键字段的值不能重复

正确答案是:D

你选择的答案是:未选

判题结果:x

13、以下哪个命令是DDL命令()

A. CREATE

B. INSERT

C.COMMIT

D.SELECT

正确答案是:A

你选择的答案是:未选

判题结果:x

15、以下关于列的叙述中,哪一项是不正确的?

A.可以增大CHAR 列的宽度。

B.如果列包含非空数据,则可以修改列的数据类型。

C.可以将CHAR 数据类型的列转换为VARCHAR2 数据类型。

D.可以将DATE 日期类型的列转换为 VARCHAR2 列。

正确答案是:B

你选择的答案是:未选

判题结果:x

16、如果需要更新6月30日之前生产的产品的有效期。应在UPDATE 语句的哪个子句中指定这一条件?

A.ON 子句

B.WHERE 子句

C.SET 子句

D.USING 子句

正确答案是:B

你选择的答案是:未选

判题结果:x

17、MySq1数据库中,取余数的运算符是()。

A.%

B.mod

C./

D.

正确答案是:A

你选择的答案是:未选

判题结果:x

18、下面哪个命令不属于数据操纵语言(DML)( )

A.ALTER···

B.INSERT···

C.UPDATE···

D.Delete···

正确答案是:A

你选择的答案是:未选

判题结果:x

19、使用哪个命令可以从表的行中删除所有数据而不删除表自身?

A.ALTER TABLE

B. DROP TABLE

C.MODIFY

D. DELETE FROM

正确答案是:D

你选择的答案是:未选

判题结果:x

20、以下哪项陈述最符合此SQL语句中“学生”表发生的变化?

UPDATE 学生

SET 午餐编号=( S E L E CT 午餐编号

FROM 学生

WHERE 学生标= 1 7 )

WHERE 学生标识= 1 9 ;

A.此语句将更新“学生”表,具体操作为将标识号为19的学生的午餐编号替换为标识号为17的学生的午餐编号。

B.将一个新行插入“学生”表中。

22

C.不发生任何变化,因为不能在UPDATE 语句中使用子查询。

D.删除学生17的午餐编号,并根据学生19的午餐编号插入一个新值。

正确答案是:A

你选择的答案是:未选

判题结果:x

21、删除emp表中所有数据,且可以rollback,以下语句哪个命令可以实现()

A. truncate table emp

B. dro table emp

C.delete*from emp

D.delete from emp

正确答案是:D

你选择的答案是:未选

判题结果:x

22、哪个命令用来创建一个primary key constraint pk_books 在表 BOOKS,列ISBN上?请选择一个。

A. create primary key on books(ISBN);

B. create constraint pk_books primary key on books(ISBN);

C. alter table books add constraint pk_books primary key (ISBN);

D. alter table books add primary key (ISBN);

正确答案是:C

你选择的答案是:未选

判题结果:x

23、以下哪个命令是DCL命令()

A. CREATE

DDL

B.INSERT-DML.

C.COMMIT

D.GRANT

774

正确答案是:D

你选择的答案是:未选

判题结果:x

第四章 查询操作

选择:

1、应使用以下哪个组函数来显示“雇员”表中的最高薪金值?

A.AVG B. COUNT

C. MAX

D.MIN

正确答案是:C

你选择的答案是:未选

判题结果:x

2、转换日期类型为字符串的转换函数是()。

A. to_date

B. to_datetime

C . t o c h a r

D.to_number

正确答案是:C

你选择的答案是:未选

判题结果:x

3、下列正确查询姓张的学生的语句是()。

A.select*from 表名 where 姓名='张'

B.select*from 表名 where 姓名 like '张%'

C.select*from 表名 where 姓名='%张%'

D.select*from 表名 where 姓名 like '张'

正确答案是:B

你选择的答案是:未选

判题结果:x

4、查询出EMP表中1982年及以后入职的员工信息(注:字段hiredate为入职日期,数据类型为DATE型)

A. select * from emp where hiredate>='19820101';

B. select * from emp where hiredate>=to_char('19820101',YYYYMMDD');

C. select* from emp where to_date(hiredate,'YYYYMMDD')>='19820101';

D.select*from emp where to_char(hiredate,'YYYYMMDD')>='19820101';

正确答案是:A

你选择的答案是:未选

判题结果:x

5、在PL/SQL中用以下哪个运算符或函数,可以将两个字符串连接起来

A. strcat

B.+

C.|I

D. stradd

正确答案是:C

你选择的答案是:未选

判题结果:x

⑥、emp表是雇员信息表,sal字段存放是的雇员的月薪

以下哪个变量可以存放sal类型的值

A.v_sal emp%rowtype;

B.v_sal emp.sal%type;

C. v_sal emp.sal.%type;

D.v_sal%type(emp.sal);

正确答案是:B

你选择的答案是:未选

判题结果:x

emp表是雇员信息表,以下哪个变量可以存放emp表中的一条记录

A.v_record emp%type;

B.v_record emp%recordtype;

C.v_record emp%record_type;

D.v_record emp%rowtype;

正确答案是:D

你选择的答案是:未选

判题结果:x

8、下面四个语句中哪一个是正确的?( )

A.SELECT*,ENAME FROM EMP;

B. DELETE*FROM EMP;

C. SELECT DISTINCT EMPNO,HIREDATE FROM EMP;

D. SELECT ENAME|SAL AS “name”FROM EMP;

正确答案是:C

你选择的答案是:未选

判题结果:x

9、下列哪个是组合主键的特征()

A.每列有唯一的值,但不是NULL值

B.组合有唯一的值,并且其中每列没有NULL值

C.组合的第一列和最后一列有唯一值

D.组合的第一列和最后一列有唯一值,但没有NULL值

正确答案是:B

你选择的答案是:未选

判题结果:x

10、以下SQL语句将返回什么结果?

SELECT COUNT(DISTINCT 薪金)FROM雇员;

A. 雇员表中所有唯一薪金的列表

B. 雇员表中的薪金总额

C. 雇员表中的总行数

D.雇员表中的唯一薪金的数量

正确答案是:D

你选择的答案是:未选

判题结果:x

24

11、在Oracle中,有一个教师表teacher的结构如下:

ID NUMBER(5)

NAME VARCHAR2(25)

EMAIL VARCHAR2(50)

下面哪个语句显示没有Email地址的教师姓名()。

A.SELECT name FROM teacher WHERE email = NULL;

B.SELECT name FROM teacher WHERE e\sin l \leftrightarrow N U L L ;

C.SELECT name FROM teacher WHERE email IS NULL;

D.SELECT name FROM teacher WHERE email IS NOT NULL;

正确答案是:C

你选择的答案是:未选

判题结果:x

12、关于通配符中的“%”,以下说法正确的两项是()。

A.代表任意一个字符,与Like 结合使用

B.代表任意多个字符,与Like结合使用

C.代表任意一个字符,在Like后的表达式中只能使用一次“%

D.代表任意多个字符,在Like后的表达式中不可以使用多次“%”

正确答案是:B

你选择的答案是:未选

判题结果:x

13、查询出所有名字以'S'开始的员工()

A. select * from emp where ename in 'S%';

B.select* from emp where ename='S%';

C.select * from emp where ename like 'S%';

D.select*from emp where ename like 'S_';

正确答案是:C

你选择的答案是:未选

判题结果:x

14、语句SELECT*FROM dept WHERE NOTEXISTS (SELECT * FROM emp WHEREdeptno=dept.deptno)执行后的结果为( )

A.只显示存在于EMP表中的部门全部信息。

B.只显示不存在于EMP表中的部门全部信息

C.未返回任何数据

D.显示DEPT表中的全部信息

正确答案是:B

你选择的答案是:未选

判题结果:x

15、在Oracle中,下面用于限制分组函数的返回值的子句是()。

A.WHERE

B.HAVING

C.ORDER BY

D.无法限定分组函数的返回值

正确答案是:B

你选择的答案是:未选

判题结果:x

16、对于以下SQL语句说法正确的是

SELECT ename FROM emp

WHERE sal IN (SELECT MAX(sal)

FROM emp GROUP BY deptno);

A.这个语句是符合语法的

B.这个语句是不能执行的,因为缺少HAVING子句

C.这个语句是不能执行的,因为分组的条件列不在SELECT列表中

D.这个语句是不能执行的,因为GROUPBY子句应该在主查询中,而不是在子查询中

正确答案是:A

你选择的答案是:未选

判题结果:x

17、()子句用于列出唯一值。

A. unique

B. distinct

C. order by

D. group by

正确答案是:B

你选择的答案是:未选

判题结果:x

18、下面哪一个语句可以使用子查询( )

A. SELECT 语句

B. UPDATE 语句

C. DELETE 语句

D.以上都是

正确答案是:D

你选择的答案是:未选

判题结果:x

19、列出EMP表中,从事每个工种(JOB)的员工人数()

A. select job from emp;

B.select job,count(*) from emp;

C. select distinct job,count(*) from emp;

D.select job,count(*) from emp group by job;

正确答案是:D

你选择的答案是:未选

判题结果:x

20、查询出EMP表中COMM字段为空的记录()

A.select*from emp where comm=";

B.select* from emp where comm=null;

C.select* from emp where nvl(comm)=0;

D.select*from emp where comm is null;

正确答案是:D

你选择的答案是:未选

判题结果:x

21、哪一个是子查询执行的顺序()

A.最里面的查询到最外面的查询

B.最外面的查询到最里面的查询

C.简单查询到复杂查询

D.复杂查询到简单查询

正确答案是:A

你选择的答案是:未选

判题结果:x

22、数据库中有两个用户scott和myuser,物资表wz是属于myuser用户的,但当前用户是scott,要求查询物资表wz(wno,wname,wtype,wunit)物资单位wunit列为null的记录,取结果的前5条记录显示,以下正确的SQL语句是( )

A. select*from scott.wz where wunit is null and rownum<5;

B. select*from myuser.wz where wunit =null and rownum<5;

C. select*from myuser.wz where wunit is null and rownum<6;

D. select*form scott.wz where wunit is null and rownum<6;

正确答案是:C

你选择的答案是:未选

判题结果:x

23、要求查询物资表wz(wno,wname,wtype,wunit)物资单位wunit列为null的记录,取结果的前5条记录显示,以下正确的SQL语句是()

26

A. select* from wz where wunit is null limit 0,5;

B. select * from wz where wunit=null limit 0,5;

C. select * from wz where wunit is null limit 1,5;

D. select * form wz where wunit=null limit 1,5;

正确答案是:A

你选择的答案是:C

判题结果:x

24、使用以下哪个函数可返回月份中的最大日期?

A.END_DAY

B. FINAL_DAY C. HIGHEST_DAY

D.LAST_DAY

正确答案是:D

你选择的答案是:未选

判题结果:x

25、要统计某表中记录的总个数,以下哪项是正确的SQL语句()。

A.select Max(*)from 表名

B. select Sum(*) from 表名

C. select Count(*)from 表名

D.select Min(*)from 表名

正确答案是:C

你选择的答案是:未选

判题结果:x

26、查询出当前的数据库系统时间,精确到秒()

A. select to_date(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;

B. select to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;

C. select date(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;

D.select chr(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;

正确答案是:B

你选择的答案是:未选

判题结果:x

27、查询出当前的日期,可以用下面哪个选项()

A. select curdate();

B.select to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;

C. select date(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;

D.select chr(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;

正确答案是:A

你选择的答案是:B

判题结果:x

28、取出工资在2000到3000元(包括上下限)之间的员工()

A.select * from emp wher sal in (2000,3000);

B.select* from emp wher sal like (2000,3000);

C. select * from emp wher sal=(2000,3000);

D. select* from emp wher sal between 2000 and 3000;

正确答案是:D

你选择的答案是:未选

判题结果:x

第五章 视图和索引操作

选择:

1、下面语句中,哪种语句用来创建视图?

A.CREATE TABLE

B.ALTE VIEW

C.DROP VIEW

D.CREATE VIEW

正确签安具:D

你选场的签案具,选

判题结甲

2、一个VIEW被以下语句创建,请问在该VIEW上可进行哪个操作?

CREATE VIEW USA_STATES

AS SELECT count(*) FROM STATE

WHERE CNT_CODE=1

WITH check option;

A.SELECT

B. SELECT,UPDATE

C. SELECT,DELETE

D.SELECT,INSERT

正确答案是:A

你选择的答案是:未选

判题结果:x

3、下列关于表和视图的说法正确的是()

A.每个视图对应一个表

B.视图是表的一个镜像备份

C.对所有视图也可象表一样执行UPDATE操作

D.视图的数据全部在表中

正确答案是:D

你选择的答案是:未选

判题结果:x

4、有如下2步操作,并且均成功执行,请选择结果()

delete from emp;

rollback;

A.emp表中数据处于回滚段中

B.emp表中的数据被永久删除

C.emp表中的数据没有变化

D.原来的emp表中的数据被添加到新emp表中

正确答案是:C

你选择的答案是:未选

判题结果:x

5、()是用于控制数据访问的语言。

A. DML

B. DDL

C. DCL

D. DLL

正确答案是:C

你选择的答案是:未选

判题结果:x

6、视图可以用于()

A.限制对表中指定列的访问

B.限制对表中行的子集的访问

C.A和B都是

D.A和B都不是

正确答案是:C

你选择的答案是:未选

判题结果:x

7、下面关于删除视图的说法哪一个是正确的()。

A.删除视图后应立即用COMMIT语句使更改生效

B.删除视图后,和视图关联的表中的数据不再存在

C.视图被删除后视图中的数据也将被删除

D.用dorp VIEW 删除视图

正确答案是:D

你选择的答案是:未选

判题结果:x

8、建表语句中的not null,该代码表示的含义是:

A 允许空格

B非空约束

C 不允许写入数据

D 不允许读取数据

正确答案是:B

你选择的答案是:未选

判题结果:x

9、select*from student 该代码中的*号,表示的正确含义是:

A 普通的字符*号

B 错误信息

C 所有的字段名

D 模糊查询

正确答案是:C

你选择的答案是:未选

判题结果:x

10、在语句select* from student where s_name like'%晓%'where 关键字表示的含是:

A 条件

B在哪里

C 模糊查询

D 逻辑运算

正确答案是:C

你选择的答案是:未选

判题结果:x

1、_数据库是系统提供的最重要的数据库,其中存放了系统级的信息。(系统)

2、修改数据库使用T-SQL 的_语句, 删除数据库使用 T-SQL 的_语句。(ALTER,DROP)

3、在 SQL Server中,一般主要数据文件的扩展名为_,一般次要数据文件的扩展名为_, 事物日志文件的扩展名为_。(mdf, ndf, ldf)

4、在SQL Server中,数据库具有三类操作系统文件, 它们是_, _, _。(主要数据文件、次要数据文件、事务日志文件)

5、在SQL Server中,一个数据库至少有一个_文件和一个_文件。(主要数据文件、事务日志文件)

6、使用T-SQL 创建表的语句是:_;修改表结构的语句是:_;删除表的语句是: _.(CREATE TABLE,ALTER TABLE,DROP TABLE)

7、使用 T-SQL 操作表的数据,添加语句是:_;更新语句是:_;删除语句是:_.(INSERT INTO, UPDATE, DELETE)

8、T-SQL 表定义有_、_、_、_和_5个列级约束。(定义主键约束,定义唯一性约束,定义外键约束,定义检查约束,定义默认值约束)

9、T-SQL 表定义有_、_、_、和_4个表级约束。(实体完整性约束,域完整性约束,参照完整性约束,用户定义完整性约束,)

10、T-SQL 中,_语句使用频率最高。(SELECT查询)

11、左外连接返回连接中左表的_数据行,返回右表中的_数据行。(所有,所有匹配)

12、SELECT 查询语句中两个必不可少的子句是_和_。(SELECT,FROM)

13、在 SQL Server中不仅可以通过视图检查表中的数据,而且还可以向表中添加和修改数据,但是所插入的数据必须符合表中的_.(列和约束)

14、视图是从_或其他视图导出的表。(基本表)

15、数据模型的三个要素是_、_、_。(数据结构、数据操作、[数据]完整性约束)

在 Transact-SQL 中如果要对查询结果进行分组, 则需要使用_子句。

考答案: group^groupby^^^^^^

2.

使用 Transact-SQL 删除数据库的语句为_。

考答案: DROPDATABASE^dropdatabase^DropDatabase^Dropdatabase^drop^^^^

3.

使用 Transact-SQL 创建数据库的语句为_。

考答案: CREATEDATABASE^createdatabase^CreateDatabase^Createdatabase^create^^^^

4.

数据库是计算机系统中按照一定方式组织、存储和应用的_。

考答案:相关数据集合^数据集合^^^^^^^

5.

数据是表示信息的符号,信息是数据所包含的_。

考答案:含义^^^^^^^^

6.

ER 数据模型一般在数据设计的_阶段使用。

考答案:概念设计^^^^^^^^

7.

数据库的物理设计是对一个给定的_模型选取一个最合适应用环境的物理结构的过程。

考答案:逻辑数据^^^^^^^^

8.

数据库设计中,将分ER 图集成时,主要任务是增补_。

考答案:各局部ER 之间的联系^^^^^^^^

9.

DBS的维护工作由_承担。

考答案: DBA^^^^^^^^

10.

在DBD 中,子类具有一个重要的性质:_。

考答案:继承性^^^^^^^^

11.

θ连接操作由关系代数的_操作和_操作组合而成。

考答案:笛卡尔积^选择^选择^笛卡尔积^^^^^

12.

关系代数是以_为运算对象的一组高级运算的集合。

考答案:关系^^^^^^^^

13.

若在关系中置换属性的次序,可用的关系代数运算是_。

考答案:投影^^^^^^^^

14.

查询优化是指系统对关系代数表达式进行优化组合,它的目的是_。

考答案:提高系统效率^^^^^^^^

15.

自然连接要求被连接的两个关系具有_。

考答案:一个或多个相同的属性名^^^^^^^

16.基本表结构的修改用_关键字,基本表内容的修改用_关键字。

考答案: ALTER^UPDATE^^^^^^^

17.

删除表中数据的命令是:_

考答案: delete^deletefrom^^^^^^^

18.

新建数据库的命令是:_

考答案: createdatabase^creatdatabase^

19.

备份数据库的命令是_

考答案: backup^backupdatabase^

20.

SQL Server2008中,局部变量名必须以_开头。

考答案:@^

21.

数据库的并发操作带来三个问题是:丢失更新问题、读脏数据问题和_。

考答案:不可重复读问题^^^^^^^^

22.

封锁技术中基本的两种封锁是排他型封锁和_。

考答案:共享型封锁^^^^^^^^

23.

SQL2 中,程序开始时默认的事务存取模式是_。

考答案: READWRITE^^^^^^^^

24.

SQL 中用_语句定义新的域。

考答案: CREATEDOMAIN^^^^^^^^

25.

触发器的动作事件条件用_子句定义,它可以是任意的条件表达式。

考答案: WHEN^^^^^^^^

26.

SQL server 2000 是分布式的关系型数据库管理系统,具有_体系结构。

考答案:客户服务器^^^^^^^^

27.

服务管理器在启动_服务后才能进行数据库操作。

考答案: SQLserver^^sqlserver^^^^^^

28.

用户在混合验证模式下使用_用户登录 SQL sever,必须提供登录名和密码。

考答案: sql授权^SQL 授权^^^^^^^

29.

T-SQL 语言中局部变量的作用域是_。

考答案:当前的批处理^^^^^^^^

30.

在 SQL server 中, 将一组具有相同权限的用户组织在一起称为_。

考答案:角色^^^^^^^^

31.

如果要使用SELECT 语句返回指定条数的记录,则应使用_关键字来限定输出字段。

31考答案: TOP ^top^Top^^^^^^

32.

使用 Transact-SQL 修改数据库的语句为_。

考答案: ALTERDATABASE^alterdatabase^AlterDatabase^Alterdatabase^alter^^^^

33.

在 Transact-SQL 中删除记录使用_语句。

考答案: DELETE^delete^Delete^^^^^^

34.

数据模型是用来描述数据库的结构和语义的,数据模型有概念数据模型和结构数据模型两类, ER 模型是_。

考答案:概念数据模型^^^^^^^^

35.

DBD 的逻辑设计分成两大部分:_和_。

考答案:DB逻辑结构设计^应用程序设计^应用程序设计^DB 逻辑结构设计^^^^^

36.

在关系代数运算中,最浪费时间的两个运算是_和_。

考答案:笛卡尔积^连接运算^连接运算^笛卡尔积^^^^^

37

安全运算是指不产生_和_的运算。

考答案:无限关系^无穷验证^无穷验证^无限关系^^^^^

38.

θ 连接操作由_等基本操作组合而成。

考答案: × Q ^^^^^^^^

39.

SQL 中表结构的修改命令是_。

考答案: ALTER^ALTERTABLE^^^^^^^

40.

数据库中只存放视图的_而不存放视图的_。

考答案:定义^记录数据 ^^^^^^^

41.

对查询结果分组使用的关键字是_

考答案: groupby^

42.

truncate table 的作用是_

考答案:删除表中的所有记录^删除所有记录^删除表中的全部记录^删除全部记录^

43.

事务运行过程中,由于种种原因,使事务未运行到正常终止点就被撤消,这种情况称为_。

考答案:事务故障^^^

44.

若事务丁对数据A 加上_锁,则允许T读取和修改A ,其他任何事务都不允许对A 加任何类型的锁,直到T释放A 上的锁。

考答案:X^^^^^^^^

45.

在数据库技术中,把未提交的随后被撤消的数据称为_。

考答案:脏数据^^^^^^^^

3246.

S锁解决了丢失更新问题,但同时又可能会引起_问题。

考答案:死锁^^^^^^^^

47.

SQLserver2000 的版本主要有企业版、标准版、_和开发版4个版本。

考答案:个人版^^^^^^^^

48.

用户访问 SQL server 数据库中的数据时,经过的第一个验证过程是_。

考答案:身份验证^^^^^^^^

49.

T-SQL 中用于循环结构的流程控制语句是_。

考答案: while^^^^^^^^

50.

创建局部临时表必须使用由_开头的表名。

考答案:#^^^^^^^^

51.

内连接查询可分为_、不等值连接和自然连接3种类型。

考答案:等值连接^^^^^^^^

52.

在 Transact-SQL 中添加记录使用_语句。

考答案: INSERT^insert^Insert^INSERT INTO^Insert Into^insert into^^^

53.

“为哪些表,在哪些字段上,建立什么样的索引”这一设计内容应该属于数据库设计中的_阶段。

考答案:物理设计^^^^^^^^

54.

ER 方法是设计_的方法。

考答案:概念数据模型^^^^^^^^

55.

现实世界到机器世界过渡的中间层次是_。

答案:概念模型^^^^^^^^

56.

概念设计的目标是产生反映_的数据库概念结构,即概念模式。

考答案:企业组织信息需求^^^^^^^^

57.

自然连接操作由_等基本操作组合而成。

考答案: ×πQ^^^^^^^^

58.

对关系进行垂直分割的操作称为_,对关系进行水平分割的操作称为_。

考答案:投影^选择^^^^^^^

59.

SELECT 语句进行查询时,如果要列出所查表中的所有列的简便方法是列名表用_表示。

考答案: *^

60.

在 SELECT 语句中, HAVING 子句必须跟在_子句后面。考答案: group^groupby^

61.

排序的时候关键字DESC 表示_的含义。

考答案:降序^降^降序^递减^递减顺序^倒序^倒^^

62.

事务的原子性由DBMS的_子系统来实现的。

考答案:事务管理^^^^^^^^

63.

企业管理器提供遵从_的用户界面。

考答案: Microsoft 管理控制台^^microsoft 管理控制台^^^^^^

64.

一个存储过程可以声明零个或多个参数,参数名以_开头。

考答案:@^^^^^^^^

65.

在 Transact-SQL 中如果要把查询结果放到一个新建的表中,则需要使用_子句。

考答案: INTO^into^Into^^^^^^

66.

在 Transact-SQL 中如果要对查询结果进行排序,则需要使用_子句。

考答案: orderBY^order^orderby^^^^^^

67.

在 SQL Server 中 tinyint型数的范围为_。

考答案: 0~255^0-255^0到255^^^^^^

68.

由计算机硬件、操作系统、DBMS、数据库、应用程序及有关人员等组成的一个整体叫_。

考答案:数据库系统^DBS^数据库应用系统^^^^^^

69.

在 Transact-SQL 中修改记录使用_语句。

考答案: UPDATE^update^Update^^^^^^

70.

域关系演算类似与元组演算,域变量的变化范围是_,(某个值域)

元组变量的变化范围是_。

考答案:一个关系^^^^^^^^

71.

若D1={a1,a2,a3},D2={1,2,3},则。D1×D2集合共有元组_个。

考答案:9^^^^^^^^

72.

SQLserver2000 中, 实际上用户连接的数目上限是_个。

考答案: 32767^^^^^^^^

73.

在 SQL server 2000 中,每个表最多有3 个触发器, 分别用于 Insert 、Update 和_考答案: delete^Delete^^^^^^^

74.

SQL Server 2005 支持两种登录认证模式, 一种是 Windows 身份验证模式, 另一种是_。

考答案:混合模式^混合^^^^^^^75.

ER 图向关系模型转化要解决的问题是如何将实体和实体之间的联系转换成关系模式,如何确定这些关系模式的_。

考答案:属性和键^^^^^^^^

76.

关系模型用_表示实体之间的联系。

考答案:关键码^^^^^^^^

77.

关系代数的基本操作是_。

考答案: U - ×Π Q^^^^^^^^

78.

如果在查询结果中不允许出现重复元组,应在 SELECT 语句中增加保留字_。

考答案: DISTINCT^

79.

SQL server Agent 服务包括作业、_和操作员三部分。

考答案:警告^^^^^^^^

80.

导入和导出数据可以完成多个数据库之间的_。

考答案:数据转换和转移^^^^^^^^

81.

在关系R 和S自然连接时,把原该舍弃的元组放在结果关系中,这种操作称为_。

考答案:外连接^^^^^^^^

82.

除法操作由_等基本操作组合而成。

考答案: - π Q^^^^^^^^

83.

视图是一种虚表,它是从_导出的表。

考答案:基本表^^^^^^^^

84.

在 SQL Server中,数据库是由数据文件和_文件组成的。

考答案:事务日志^日志^^^^^^^

85.

数据库应用系统设计中逻辑设计的主要内容是把ER模型的_和_转换为关系模式。

考答案:实体^联系^联系^实体 ^^^^^

86.

更新表中数据的命令是:_

考答案: update^^^^^^^^

87.

实体完整性规则是对_的约束,参照完整性规则是对的_约束。

考答案:主键^外键^^^^^^^

88.

SQL 中 getdate()的作用是_

考答案:取系统时间^取数据库服务器的系统时间^系统时间^系统日期^

89.

新增表中数据的命令是:_

35考答案: insert^insertinto^^^^^^^

90.

支持数据库各种操作的软件系统叫_。

答案: DBMS^数据库管理系统^^^^^^^

91.

数据实施阶段包括两项重要的工作,一项是数据的_,另→项是应用程序的编码和调试。

考答案:载入^^^^^^^^

92.

关系中没有行序的原因是_

考答案:关系被定义为一个集合^^^^^^^^

93.

删除数据库的命令是:

考答案: dropdatabase^

94.

删除数据库中表的命令是:

考答案: droptable^

95.

关系模型的基本数据结构是_,其数据库存储时基本组织方式是_。

考答案:关系^文件^二维表^文件^^^^^

96.

对查询结果排序的关键字是_,默认的顺序是_

考答案: orderby^升序^

1、Oracle 9i 中的 i 代表_.

参考答案: internet^Internet^

2、Oracle 11g中的 g代表_.

参考答案: grid^Grid^

3、oracle 11g发布于_年

参考答案: 2007^07^

4、启动监听器的命令是_

参考答案: 1snrct1 start^

5、启动服务的命令是_.

参考答案: net start^

1、一个表在物理空间上对应一个或多个_文件。

参考答案:数据^

2、创建表空间的语法格式是create _表空间名 datafile 路径 size 20m

参考答案: tablespace^

3、修改表空间的命令为_ tablespace表空间名 add datafile 路径size 20m;

参考答案: alter^

4、删除表空间的命令是:_ tablespace表空间名

参考答案: drop^

365、oracle数据库中最小的存储分配单元是_

参考答案:块^数据块^

1、oracle数据库系统的物理存储结构主要由三类文件组成,分别为_,重做日志文件,控制文件。

参考答案:数据文件^

1、数据操纵语言中典型的四种语句是 Insert、select 、update和_。

参考答案: delete^delete^

2、事务处理控制语言中的Commit命令表示提交事务,而回退事务则用_命令表示。

参考答案: ROLLBACK^rollback^

3、PL/SQL 基本语句块中的声明部分使用_关键词。

参考答案: DECLARE^declare^

4、存储过程的参数模式除了具有 In和Out外,还有_模式。

参考答案: IN OUT^in out^

1、查询数据表的表结构要用到的关键字为_.(字母小写)

参考答案: desc^DESC^

2、查询数据表的内容,需要用到的 sql命令为:_.(字母小写)

参考答案: select^SELECT^

三. 简答题(共 1 题,40.0 分)

51. (简答题, 40.0 分)

已知某图书管理数据库有如下表格:

用户表user、部门表dept、角色表role、图书表book、图书分类表book_classify、图书借阅表book_borrow、还书表book_return、借阅预约表book_appoint、图书遗失表book_lose;

(1)用户表:包含用户编号id、姓名user_name、出生日期birth_date、身份证号id_card

、帐号login_name、密码password、手机号mobile、电子邮件email、部门编号dept_id、角色编号role_id信息。

(2)部门表:包含部门编号id、部门名称dept_name、部门创建时间create_date信息。

(3)角色表:包含角色编号id、角色名称role_name、备注信息remark。

(4)图书表:包含图书编号id、书籍名称book_name、作者author、定价price、有无光盘cd、出版社publish、图书分类编号book_classify_id、总数量account、图书ISBN编号isbn、图书创建时间create_time、备注信息remark。

(5)图书分类表:包含编号id、图书分类名称book_classify_name、父分类编号father_id、创建时间create_time。

(6)图书借阅表:包含编号id、图书编号book_id、用户编号user_id、借阅时间borrow_time、归还时间return_time、创建图书借阅状态create_time、备注信息remark。

(7)图书还书表:包含编号id、图书借阅编号borrow_id、归还时间return_time、创建时间create_time、备注信息remark。

(8)借阅预约表:包含预约流水编号id、图书编号book_id、用户编号user_id、预约时间appoint_time、创建时间create_time、备注信息remark。

(9)图书遗失表:包含遗失流水编号id、图书借阅流水编号borrow_id、创建时间create_time、备注信息remark。

对于图书管理数据库,请写出正确的SQL语句:

1)查询作者为“刘刚”的图书的数量。

2)查询出版单位为人民邮电出版社的图书明细。

3)检索2024年3月的借阅图书的读者人数。

4)图书管理系统里需要新增一本刚采购的医药方面的书籍:书名为《疑难杂病临证手册(第2版)》、作者为余孟学、定价为158元、出版社为河南科技出版社、ISBN编号为9787534989230。要把它添加到图书表book里,图书分类选择“R 医药、卫生”。

5)查询用户小影的借书记录,包括用户姓名、借阅图书名称、出版社、借书时间、归还时间。

6)针对用户表user、图书表book、图书借阅表book_borrow建立一个用户借阅图书信息查询视图user_book_borrow_view,查询用户编号、登录名称、姓名、图书名称、出版社、借阅时间、归还时间。

7)按book_name字段建立图书索引。索引名为:booknameindex;

8)按publish,book_name字段建立图书表复合索引。索引名为:bookpublishnameindex ;

9)更新小刚用户的部门为运维部。

10)删除图书名称包含:“经济学”的所有图书

11)删除用户小影的全部借书记录。

12)查询所有用户丢失的图书名称。

下面链接中放的是该题的数据库、基本表和初始数据,同学们自己下载。

我的答案:

1.SELECT COUNT(*)   

FROM book   

WHERE author = '刘刚';

2.SELECT *   

FROM book   

WHERE publish = '人民邮电出版社';

3.SELECT COUNT(DISTINCT user_id)   FROM book_borrow   WHERE YEAR(borrow_time) = 2024 AND MONTH(borrow_time) = 3;

4.INSERT INTO book (book_name, author, price, publish, isbn, create_time, book_classify_id)   VALUES ('疑难杂病临证手册(第2版)', '余孟学', 158, '河南科技出版社', '9787534989230', NOW(), (SELECT id FROM book_classify WHERE book_classify_name = 'R 医药、卫生'));

5.SELECT u.user_name, b.book_name, b.publish, bb.borrow_time, bb.return_time   FROM user u   JOIN book_borrow bb ON u.id = bb.user_id   JOIN book b ON bb.book_id = b.id   WHERE u.user_name = '小影';

6.CREATE VIEW user_book_borrow_view AS   SELECT u.id AS user_id, u.login_name, u.user_name, b.book_name, b.publish, bb.borrow_time, bb.return_time   FROM user u   JOIN book_borrow bb ON u.id = bb.user_id   JOIN book b ON bb.book_id = b.id;

7.CREATE INDEX booknameindex ON book(book_name);

8.CREATE INDEX bookpublishnameindex ON book(publish, book_name);

9.UPDATE user   SET dept_id = (SELECT id FROM dept WHERE dept_name = '运维部')   WHERE user_name = '小刚';

10.DELETE FROM book   WHERE book_name LIKE '%经济学%';

11.DELETE FROM book_borrow   WHERE user_id = (SELECT id FROM user WHERE user_name = '小影');

12.SELECT b.book_name   FROM book_lose bl   JOIN book_borrow bb ON bl.borrow_id = bb.id   JOIN book b ON bb.book_id = b.id;

正确答案:

1)查询作者为“刘刚”的图书的数量。

SELECT COUNT(*) AS 数量  FROM `book`  WHERE `author`='刘刚'

2)查询出版单位为人民邮电出版社的图书明细。

SELECT `id`,`book_name`,`author`,`price`,`cd`,`publish`,`book_classify_id`,`account`,`isbn`,`create_time`,`remark` FROM `book` WHERE `publish`='人民邮电出版社';

3)检索2024年3月的借阅图书的读者人数。

SELECT COUNT( DISTINCT `user_id`) FROM `book_borrow` 

WHERE YEAR(`borrow_time`)='2024' AND MONTH(`borrow_time`)='3';

4)图书管理系统里需要新增一本刚采购的医药方面的书籍:书名为《疑难杂病临证手册(第2版)》、作者为余孟学、定价为158元、出版社为河南科技出版社、ISBN编号为9787534989230。要把它添加到图书表book里,图书分类选择“R 医药、卫生”。

INSERT INTO`book`VALUES('5','疑难杂病临证手册(第2版)','余孟学','158','1','河南科技出版社','4','1000','9787534989230',NOW(),NULL);

5)查询用户小影的借书记录,包括用户姓名、借阅图书名称、出版社、借书时间、归还时间。

SELECT u.user_name,b.book_name,b.publish,w.borrow_time,w.return_time FROM USER u, book b, book_borrow w WHERE w.book_id = b.id AND w.user_id = u.id AND u.login_name = '小影';

6)针对用户表user、图书表book、图书借阅表book_borrow建立一个用户借阅图书信息查询视图user_book_borrow_view,查询用户编号、登录名称、姓名、图书名称、出版社、借阅时间、归还时间。

CREATE OR REPLACE VIEW user_book_borrow_view

AS

SELECT u.id,u.login_name,u.user_name,b.book_name,b.publish,w.borrow_time,w.return_time

FROM USER u, book b, book_borrow w

WHERE w.book_id = b.id AND w.user_id = u.id ;

7)按book_name字段建立图书索引。索引名为:booknameindex;

CREATE INDEX booknameindex ON  `book`(`book_name`)

8)按publish,book_name字段建立图书表复合索引。索引名为:bookpublishnameindex ;

CREATE INDEX bookpublishnameindex ON  `book`(`publish`,`book_name`)

9)更新小刚用户的部门为运维部。

UPDATE `user` SET `dept_id`=(SELECT `id` FROM `dept` WHERE `dept_name`='运维部')

WHERE `user_name`='小刚'

10)删除图书名称包含:“经济学”的所有图书

delete from `book` where `book_name` like '%经济学%'

11)删除用户小影的全部借书记录。

DELETE FROM `book_borrow` WHERE`user_id`=(SELECT `id` FROM `user` WHERE `user_name`='小影')

12)查询所有用户丢失的图书名称。

SELECT `user_name`,`book_name` FROM `book`,`book_borrow`,`user`,`book_lose`

WHERE `book_lose`.`borrow_id`=`book_borrow`.`id` AND `book_borrow`.`user_id`=`user`.id AND `book_borrow`.`book_id`=`book`.`id`

答案解析:

四. 操作题(共 1 题,30.0 分)

52. (操作题, 30.0 分)

按照要求实现员工管理数据库系统中的指定操作:

1、创建一个数据库 staff,并在数据库中创建以下四张表:

员工表 employee(员工编号id,姓名userName,出生日期birthDate,身份证号idCard,登录名称loginName,登录密码password,手机号mobile,电子邮件email,部门编号deptId,员工级别level,员工头像avatar,备注remark)

部门表 dept(部门编号id,部门名称deptName,部门经理编号managerId)

工资表payroll(工资编号id,员工编号empId,基本工资baseSalary,应发工资actualSalary,奖金bonus,缺勤扣钱deductMoney,薪资发放日期grantDate)

请假表ask_leave(请假编号id,员工编号empId,请假原因leaveReason,请假开始时间beginDate,请假结束时间endDate,提交时间submitDate,审核人编号auditId(该列有触发器维护),申请状态status,审核意见auditOpinion)

基础数据自己填写。

2、编写存储过程实现插入员工表:参数为:员工编号id,姓名userName,出生日期birthDate,身份证号idCard,登录名称loginName,登录密码password,手机号mobile,电子邮件email,部门编号deptId,员工级别level,员工头像avatar,备注remark。

存储过程名称为:insert_employee。

3、利用存储过程在员工表中插入5条记录。 

4、创建触发器,当插入或修改工资表payroll时,应发工资自动为“基本工资+奖金-缺勤扣钱”。

5、在员工表中依据姓名userName建立索引。索引名为:index_userName。

6、建立员工部门工资视图(包含员工名称,部门名称,基本工资,应发工资,奖金,缺勤扣钱)视图名称:v_employee_dept_payroll。

7、利用触发器实现插入请假信息时,审核人编号自动填入请假人所在部门的部门经理编号。触发器名称为:insert_ask_leave。

8、备份数据库的结构和数据,导出SQL文件名为:staff_sjk.sql。

9、将staff_sjk.sql上传至服务器。

我的答案:

正确答案:

CREATE DATABASE staff;

USE staff

CREATE TABLE employee(

id INT NOT NULL AUTO_INCREMENT,

userName VARCHAR(255),

birthDate DATE,

idCard VARCHAR(255),

loginName VARCHAR(255),

PASSWORD VARCHAR(255),

mobile VARCHAR(255),

email VARCHAR(255),

deptId INT,

LEVEL INT,

avatar BLOB,

remark TEXT,

PRIMARY KEY(id)

);

CREATE TABLE dept(

id INT NOT NULL AUTO_INCREMENT,

deptName VARCHAR(255),

manageId INT,

remark VARCHAR(255),

PRIMARY KEY(id)

);

CREATE TABLE payroll(

id INT NOT NULL AUTO_INCREMENT,

empId INT,

baseSalary DOUBLE,

actualSalary DOUBLE,

bonus DOUBLE,

deductMoney DOUBLE,

grantDate DATE,

PRIMARY KEY(id)

);

CREATE TABLE ask_leave(

id INT NOT NULL AUTO_INCREMENT,

empId INT,

leaveReason TEXT,

beginDate DATE,

endDate DATE,

submitDate DATE,

auditId INT,

STATUS INT,

auditOpinion TEXT,

PRIMARY KEY(id)

);

2、

DELIMITER $$

CREATE

       PROCEDURE `staff`.`insert_employee`( IN id INT, IN userName VARCHAR(255),

IN birthDate DATE,

IN idCard VARCHAR(255),

IN loginName VARCHAR(255),

IN PASSWORD VARCHAR(255),

IN mobile VARCHAR(255),

IN email VARCHAR(255),

IN deptId INT,

LEVEL INT,

IN avatar BLOB,IN remark TEXT)

   

    BEGIN

          INSERT INTO `employee` VALUES(NULL,userName,birthDate,idCard,

loginName,PASSWORD,mobile,email,deptId,LEVEL,avatar,remark);

    END$$

DELIMITER ;

3、CALL `insert_employee`(NULL,'aa','2001-1-1','41032222222222222','abc','1234','123445555','123@qq.com',1,1,NULL,NULL);写5条即可

4、

DELIMITER $$

CREATE

    TRIGGER `staff`.`beforeinsert_payloyee` BEFORE  INSERT 

    ON `staff`.`payroll`

    FOR EACH ROW BEGIN

       set  new.`actualSalary`=new.`baseSalary`+new.`bonus`-new.`deductMoney`;

    END$$

DELIMITER ;

DELIMITER $$

CREATE

    TRIGGER `staff`.`before_update_payloyee` BEFORE  UPDATE 

    ON `staff`.`payroll`

    FOR EACH ROW BEGIN

   SET  new.`actualSalary`=new.`baseSalary`+new.`bonus`-new.`deductMoney`;

    END$$

DELIMITER ;

5、

CREATE INDEX index_userName ON `employee`(`userName`);

6、

CREATE VIEW  v_employee_dept_payroll

AS

SELECT `userName`,`deptName`,`baseSalary`,`actualSalary`,`bonus`,`deductMoney`

FROM`dept`,`employee`,`payroll`

WHERE `dept`.`id`=`employee`.`deptId` AND `employee`.`id`=`payroll`.`empId`

7、

DELIMITER $$

CREATE

    TRIGGER `staff`.`insert_ask_leave` BEFORE  INSERT 

    ON `staff`.`ask_leave`

    FOR EACH ROW BEGIN

       DECLARE manangeID1 INT;

       SELECT `manageId` INTO  manangeID1 FROM `dept` WHERE `id`=(

              SELECT `deptId` FROM `employee` WHERE `id`=new.`empId`);

        SET new.`auditId`=manangeID1;

    END$$

DELIMITER ;

实验二:进销存管理系统(2)

  • 编写触发器实现:当插入或修改商品名称时,修改名称拼音缩写

DELIMITER $$

USE `mypos`$$

DROP TRIGGER /*!50032 IF EXISTS */ `updatepysx`$$

CREATE

    TRIGGER `updatepysx` BEFORE INSERT ON `spb`

    FOR EACH ROW BEGIN

SET new.spmcsx=qjp(new.spmc);

    END;

$$

DELIMITER ;

DELIMITER $$

USE `mypos`$$

DROP TRIGGER /*!50032 IF EXISTS */ `updatepysx1`$$

CREATE

    TRIGGER `updatepysx1` BEFORE UPDATE ON `spb`

    FOR EACH ROW BEGIN

IF (old.spmc != new.spmc) THEN

SET new.spmcsx=qjp(new.spmc);

END IF;

    END;

$$

DELIMITER ;

CREATE DEFINER=`root`@`localhost` FUNCTION `qjp`(p_name VARCHAR(100) ) RETURNS VARCHAR(100) CHARSET utf8

BEGIN

DECLARE V_COMPARE  VARCHAR(255);

DECLARE V_RETURN VARCHAR(255);

DECLARE I INT;

SET I = 1;

SET V_RETURN = '';

WHILE I < LENGTH(P_NAME) DO

SET V_COMPARE = SUBSTR(P_NAME, I, 1);

IF (V_COMPARE != '') THEN

SET V_RETURN = CONCAT(V_RETURN, qpysx(V_COMPARE));

END IF;

SET I = I + 1;

END WHILE;

IF (ISNULL(V_RETURN) OR V_RETURN = '') THEN

SET V_RETURN = P_NAME;

END IF;

RETURN V_RETURN;

    END$$

DELIMITER ;

DELIMITER $$

USE `pjsjk`$$

DROP FUNCTION IF EXISTS `qpysx`$$

CREATE DEFINER=`root`@`localhost` FUNCTION `qpysx`(p_name VARCHAR(10)) RETURNS VARCHAR(10) CHARSET utf8

BEGIN

DECLARE V_RETURN VARCHAR(255);

SET V_RETURN = ELT(INTERVAL(CONV(HEX(LEFT(CONVERT(P_NAME USING gbk),1)),16,10),

0xB0A1,0xB0C5,0xB2C1,0xB4EE,0xB6EA,0xB7A2,0xB8C1,0xB9FE,0xBBF7,

0xBFA6,0xC0AC,0xC2E8,0xC4C3,0xC5B6,0xC5BE,0xC6DA,0xC8BB,

0xC8F6,0xCBFA,0xCDDA,0xCEF4,0xD1B9,0xD4D1),

'A','B','C','D','E','F','G','H','J','K','L','M','N','O','P','Q','R','S','T','W','X','Y','Z');

IF v_return IS NOT NULL THEN

RETURN V_RETURN;

ELSE

RETURN p_name;

END IF ;

    END$$

DELIMITER ;

  • 编写触发器实现:当插入或删除进货明细表时修改库存表的库存数量。

DELIMITER $$

USE `mypos`$$

DROP TRIGGER /*!50032 IF EXISTS */ `updatekcsl`$$

CREATE

    TRIGGER `updatekcsl` BEFORE INSERT ON `jhmxb`

    FOR EACH ROW BEGIN

Udpate kcb set kcsl = kcsl + new.jhsl where spid=new.spid;

    END;

$$

三、缩写存储过程插入进货记录总表和明细表

/*先插入进货总表,取总表的ID,@@IDENTITY; 再依次插入明细表,做成事务,(start transaction;)commit;rollback;*/

DELIMITER $$

/*插入进货表和进货明细表,供应商ID号(gysid)、进货日期(jhrq)、进货金额(jhje)、操作员ID号(czyid)、备注(jhbz)*/

/*进货ID号(jhid)、商品ID号(spid)、进货单价(jhdj)、进货数量(jhsl)*/

CREATE PROCEDURE `jhjlcp`(gysid INT,jhje NUMERIC(18,2),czyid INT,jhbz VARCHAR(100),jhmx VARCHAR(8000))

BEGIN

/* 插入总表,并且将明细表解析*/

DECLARE @strls varchar(8000);

DECLARE @jhid INT;

DECLARE @spid INT;

DECLARE @jhdj NUMERIC(18,2);

DECLARE @jhsl NUMERIC(18,2);

SET autocommit = 0;

/** 标记是否出错 */

DECLARE t_error int default 0;

/** 如果出现sql异常,则将t_error设置为1后继续执行后面的操作 */

DECLARE continue handler for sqlexception set t_error=1;

START TRANSACTION;

insert into jhzb(gysid,jhrq,jhje,czyid,jhbz)values(gysid,curdate(),jhje,czyid,jhbz)

SET @jhid = @@identity;;

WHILE (jhmx>'') DO

SET @strls = MID(jhmx,1,LOCATE(';',jhmx)-1);

SET @spid=CAST(MID(@strls,1,LOCATE(',',@strls)-1)  AS SIGNED);

SET @strls = MID(@strls,LOCATE(',',@strls)+1);

SET @jhdj=CAST(MID(@strls,1,LOCATE(',',@strls)-1)  AS DECIMAL);

SET @jhje=CAST(MID(@strls,LOCATE(',',@strls)+1)  AS DECIMAL);

INSERT INTO jhmxb(jhid,spid,jhdj,jhsl)values(@jhid,@spid,@jhdj,@jhsl);

SET jhmx = MID(jhmx,LOCATE(';',jhmx)+1);

END WHILE;

IF t_error=1 THEN

ROLLBACK; -- 事务回滚

ELSE

COMMIT; -- 事务提交

END IF;

END */$$

DELIMITER ;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值