一、填空题 2. 在MySQL中,可以使用______语句创建视图。
3. 数据库设计的步骤包括需求分析、概念结构设计、______、物理结构设计、______和数据库运行与维护。
4. 数据库系统的运行与应用结构有客户/服务器结构(C/S结构)和______两种。
5. 用二维表结构表示实体以及实体间联系的数据模型称为______数据模型。
二、编程题 1. 在数据库db_test中创建一个事件,用于每个月将表content中姓名为“MySQL初学者”的留言人所发的全部留言信息删除,该事件开始于下个月并且在2016年12月31日结束。
在MySQL命令行客户端输入如下SQL语句即可实现: mysql>USE db_test; Database changed mysql> DELIMITER $ $ mysql>CREATE EVENT IF NOT EXISTS event_delete_content -> ON SCHEDULE EVERY 1 MONTH -> STARTS CURDATE()+INTERVAL 1 MONTH -> ENDS '2016-12-31' -> DO -> BEGIN -> IF YEAR(CURDATE())<2013 THEN -> DELETE FROM content -> WHERE username='mYSQL初学者'; -> END IF; -> END $ $ Query OK, 0 row affected (2.35 sec)
2. 临时关闭第1小题中创建的事件。
在MySQL命令行客户端输入如下SQL语句即可实现: mysql>ALTER EVENT event_delete_content DISABLE; Query OK, 0 row affected (0.00 sec)
3. 再次开启第2小题中临时关闭的事件。
在MySQL命令行客户端输入如下SQL语句即可实现: mysql>ALTER EVENT event_delete_content ENABLE; Query OK, 0 row affected (0.00 sec)
4. 将第3小题中开启的事件的名字修改为事件e_delete。
在MySQL命令行客户端输入如下SQL语句即可实现: mysql>ALTER EVENT event_edlete_content -> RENAME TO e_delete; Query OK, 0 row affected (0.00 sec)
5. 删除视图v_score中学号为“2014310101”的学生成绩信息。
使用DELETE语句在MySQL的命令行客户端输入如下SQL语句删除指定数据: mysql>DELETE FROM db_score.v_score -> WHERE studentNo='2014310101'; Query OK, 1 row affected(0.12 sec)
6. 在数据库db_test中创建一个存储过程,用于实现给定表content中一个留言人的姓名即可修改表content中该留言人的电子邮件地址为一个给定的值。
在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 row affected(0.06 sec)
7. 删除第1小题中的存储过程。
在MySQL命令行客户端输入如下SQL语句即可实现: mysql>DROP PROCEDURE sp_update_email; Query OK, 0 row affected(0.02 sec)