我們如何改變 MySQL 儲存過程?
如果我們對過程具有 ALTER ROUTINE 許可權,那麼在 ALTER PROCEDURE 語句的幫助下,可以改變 MySQL 儲存過程。為了證明這一點,我們使用一個名為“delete_studentinfo”的儲存過程示例,它具有如下建立語句:
mysql> SHOW CREATE PROCEDURE Delete_studentinfo\G *************************** 1. row *************************** Procedure: Delete_studentinfo sql_mode: ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION Create Procedure: CREATE DEFINER=`root`@`localhost` PROCEDURE `Delete_studentinfo`( IN p_id INT) BEGIN DELETE FROM student_info WHERE ID=p_id; END character_set_client: cp850 collation_connection: cp850_general_ci Database Collation: latin1_swedish_ci 1 row in set (0.01 sec)
在上述結果集中,顯然儲存過程“delete_studentinfo”中沒有註釋。現在,在 ALTER PROCEDURE 語句的幫助下,我們可以添加註釋,如下所示:
mysql> ALTER PROCEDURE Delete_studentinfo -> COMMENT 'deleting the record'// Query OK, 0 rows affected (0.03 sec)
現在,藉助以下查詢的結果集,可以確認已在儲存過程中添加註釋:
mysql> SHOW CREATE PROCEDURE Delete_studentinfo\G *************************** 1. row *************************** Procedure: Delete_studentinfo sql_mode: ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION Create Procedure: CREATE DEFINER=`root`@`localhost` PROCEDURE `Delete_studen tinfo`( IN p_id INT) COMMENT 'deleting the record' BEGIN DELETE FROM student_info WHERE ID=p_id; END character_set_client: cp850 collation_connection: cp850_general_ci Database Collation: latin1_swedish_ci 1 row in set (0.00 sec)
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP