2017计算机二级考试MySQL数据库考点习题
习题是帮助我们巩固知识的好方式,平时应该多做题,这样才能在考试中充分发挥个人水平。以下是百分网小编整理的2017计算机二级考试MySQL数据库考点习题,欢迎学习!
习题一
一、编程题
在数据库db_test中创建一个存储过程,用于实现给定表content中一个留言人的姓名即可修改表content中该留言人的电子邮件地址为一个给定的值。
二、简答题
1.请解释什么是存储过程?
2.请列举使用存储过程的益处。
3.请简述游标在存储过程中的作用。
4.请简述存储过程与存储函数的区别。
习题答案:
一、编程题
在MySQL命令行客户端输入如下SQL语句即可实现:
mysql>USE db_test;
Database changed
mysql>DELIMITER$$
mysql>CREATE PROCEDURE sp_update email(IN USer_name VARCHAR(50),IN e_mail VARCHAR(50))
一>BEGIN
一> UPDATE content SET email=e_mail WHERE username=user_name;
一>END$$
Query OK,0 rows affected(0.06 SeC)
二、简答题
1.存储过程是一组为了完成某特定功能的SQL语句集,其实质上就是一段存放在数据库中的代码,它可以由声明式的SQL语句(如CREATE、UPDATE和SELECT等语句)和过程式SQL语句(如IF-THEN-ELSE控制结构语句)组成。
2.略。可参考第11章11.1节内容。
3.游标是一个被SELECT语句检索出来的结果集。在存储了游标后,应用程序或用户就可以根据需要滚动或浏览其中的数据。
4.存储函数与存储过程之间存在这样几点区别:
(1)存储函数不能拥有输出参数,这是因为存储函数自身就是输出参数;而存储过程可以拥有输出参数。
(2)可以直接对存储函数进行调用,且不需要使用CALL语句;而对存储过程的调用,需要使用CALL语句。
(3)存储函数中必须包含一条RETURN语句,而这条特殊的SQL语句不允许包含于存储过程中。
习题二
一、编程题
在数据库db_test中创建一个事件,用于每个月将表content中姓名为“MySQL初学者”的留言人所发的全部留言信息删除,该事件开始于下个月并且在2013年12月31日结束。
二、简答题
1.请解释什么是事件?
2.请简述事件的作用。
3·请简述事件与触发器的区别。
习题答案:
一、编程题
在MySQL命令行客户端输入如下SQL语句即可实现:
mysql>USE db_test;
Database changed
mysql>DELIMITER$$
mysql>CREATE EVENT IF NOT EXISTS event_delete_content
—> ON SCHEDULE EVERY l MONTH
—>STARTS CURDATE()+INTERVAL l MONTH
—>ENDS’2013—12—31’
—>DO
—>BEGIN
—>IF YEAR(CURDATE())<2013 THEN
—>DELETE FROM content
—>WHERE username=’MySQL初学者’;
—>END IF;
—>END$$
Query OK。0 rows affected(2.35 see)
二、简答题
1.事件就是需要在指定的时刻才被执行的.某些特定任务,其中这些特定任务通常是一些确定的SQL语句。
2.事件可以根据需要在指定的时刻被事件调度器调用执行,并以此可取代原先只能由操作系统的计划任务来执行的工作。
3.事件和触发器相似,都是在某些事情发生的时候才被启动,因此事件也可称作临时触发器(temporal trig—ger)。其中,事件是基于特定时间周期触发来执行某些任务,而触发器是基于某个表所产生的事件触发的,它们的区别也在于此。