糯米文學吧

位置:首頁 > 計算機 > 計算機二級

2017計算機二級考試MySQL數據庫考點習題

習題是幫助我們鞏固知識的好方式,平時應該多做題,這樣才能在考試中充分發揮個人水平。以下是本站小編整理的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)。其中,事件是基於特定時間週期觸發來執行某些任務,而觸發器是基於某個表所產生的事件觸發的,它們的區別也在於此。