您好,登錄后才能下訂單哦!
這篇文章主要介紹“MySQL存儲過程的查看與刪除方法是什么”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“MySQL存儲過程的查看與刪除方法是什么”文章能幫助大家解決問題。
存儲過程創建以后,用戶可以通過SHOW STATUS語句來查看存儲過程的狀態,也可以通過SHOW CREATE語句來查看存儲過程的定義。用戶也可以通過查詢information_schema數據庫下的Routines表來查看存儲過程的信息。本節將詳細講解查看存儲過程的狀態與定義的方法。
在MySQL中,可以通過SHOW STATUS語句。其基本語法形式如下:
SHOW PROCEDURE STATUS [ like ‘pattern'] ;
參數PROCEDURE表示查詢存儲過程;
參數LIKE 'pattern'用來匹配存儲過程的名稱。
show procedure status like 'proc%';
在MySQL中,可以通過SHOW CREATE語句查看存儲過程的狀態,語法形式如下:
SHOW CREATE PROCEDURE proc_name ;|\G
參數PROCEDURE表示查詢存儲過程;
參數proc_name表示存儲過程的名稱。
Ⅰ使用分號結束
show create procedure proc_age;
Ⅱ使反斜杠結束(使用反斜杠條理更清晰)
存儲過程和函數的信息存儲在information_schema數據庫下的Routines表中。可以通過查詢該表的記錄來查詢存儲過程和函數的信息。其基本語法形式如下:
SELECT * FROM information_schema.Routines Where ROUTINE_NAME = ‘proc_name';
字段ROUTINE_NAME是Routines 存儲存儲過程和函數的列名稱;
參數proc_name表示存儲過程或函數的名稱。
select * from information_schema.Routines where routine_name = 'proc_age';
或者單獨查看存儲過程的語句
select routine_definition from information_schema.Routines where routine_name = 'proc_age';
在MySQL中刪除存儲過程通過SQL語句DROP完成:
DROP PROCEDURE proc_name;
關鍵字DROP PROCEDURE用來表示實現刪除存儲過程;參數proc_name表示所要刪除的存儲過程名稱。
例如
盡管MySQL數據庫支持對存儲過程的修改,但是我們依舊不可以修改存儲過程中的內容,也不能修改存儲過程的名稱。如果想要修改存儲過程的內容,只能刪除原有的存儲過程,然后再重新寫一個存儲過程;如果想要修改存儲過程的名稱,只能刪除原有的存儲過程,然后重新創建一個新的存儲過程,并且把原有存儲過程的內容寫入到新的存儲過程名稱里面。
MySQL只支持修改存儲過程的一些特性,該修改命令SQL示例如下:
alter procedure 【存儲過程名】 【存儲過程特性】;
可以寫入的存儲過程特性主要有以下6種:
2、no sql。 表示子程序不包含SQL語句。
3、reads sql data。 表示子程序中包含讀數據的SQL語句。
4、modifies sql data。 表示子程序中包含寫數據的SQL語句。
5、sql security define或sql security invoke。 如果是define,則表示該存儲過程只有定義者自身才可以執行,如果是invoke,則表示調用者可以執行。
6、comment 【注釋信息】。 表示向該存儲過程添加注釋信息。
關于“MySQL存儲過程的查看與刪除方法是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。