国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

mysql存儲過程實例詳解

來源:懂視網 責編:臨意 時間:2021-12-25 10:55:00
文檔

mysql存儲過程實例詳解

mysql中存儲過程是屬于一種在數據庫中存儲復雜程序,以便于外部程序調用的一種數據庫對象。存儲過程一般來說是為了完成特定功能的SQL語句集,經過編譯后創建并保存在數據庫中,用戶可以通過指定存儲過程的名字并給定參數(通常是在需要時)來進行調用執行。
推薦度:
導讀mysql中存儲過程是屬于一種在數據庫中存儲復雜程序,以便于外部程序調用的一種數據庫對象。存儲過程一般來說是為了完成特定功能的SQL語句集,經過編譯后創建并保存在數據庫中,用戶可以通過指定存儲過程的名字并給定參數(通常是在需要時)來進行調用執行。

mysql存儲過程是怎樣的呢?下面就讓我們一起來了解一下吧:

mysql中存儲過程是屬于一種在數據庫中存儲復雜程序,以便于外部程序調用的一種數據庫對象。

存儲過程一般來說是為了完成特定功能的SQL語句集,經過編譯后創建并保存在數據庫中,用戶可以通過指定存儲過程的名字并給定參數(通常是在需要時)來進行調用執行。

mysql存儲過程優點:

1、存儲過程可以進行封裝,并且隱藏復雜的商業邏輯。

2、存儲過程能夠回傳值,并能接受參數。

3、存儲過程通常是無法使用SELECT指令來進行運行的,由于它是屬于子程序,與查看表、數據表或是用戶定義函數不同。

4、存儲過程能夠用于數據檢驗,強制實行商業邏輯等。

當然,它也存在了一部分缺點:

1、存儲過程一般是定制化于特定的數據庫上,因為其所支持的編程語言不同。當切換到了其他廠商的數據庫系統時,就需要重寫原有的存儲過程了。

2、存儲過程的性能調校與撰寫,一般會受限于各種數據庫系統。

參考示例:

存儲過程的操作,具體代碼如下:

創建:

CREATE PROCEDURE sp_name([proc_parameter[,...]])

    [characteristic...] routine_body

    

proc_parameter:

[IN|OUT|INOUT] param_name type    #type: Any valid MySQL data type

characteristic:

LANGUAGE SQL

|[NOT] DETERMINISTIC|{CONTAINS SQL|NO SQL|READS SQL DATA|MODIFIES SQL DATA}|SQL SECURITY {DEFINAER|INVOKER}|COMMENT 'string'

routine_body:

Valid SQL procedure statement or statements

修改:

ALTER PROCEDURE sp_name [characteristic...]

characteristic:

{CONTAINS SQL|NO SQL|READS SQL DATA|MODIFIES SQL DATA}|SQL SECURITY {DEFINAER|INVOKER}|COMMENT 'string'

調用:

CALL sp_name([parameter[,...]])

刪除:

DROP PROCEDURE sp_name

查看:

show PROCEDURE STATUS [like 'pattern']

SHOW CREATE PROCEDURE sp_name

在MYSQL 存儲過程中的關鍵語法:

聲明語句結束符,可自定義為:

DELIMITER $$

DELIMITER //

聲明存儲過程,即:

CREATE PROCEDURE demo_in_parameter(IN p_in int)       

存儲過程開始與結束符號,即:

BEGIN .... END    

變量賦值,即:

SET @p_in=1  

變量定義:

DECLARE l_int int unsigned default 4000000; 

創建mysql存儲過程、存儲函數:

create procedure 存儲過程名(參數)

存儲過程體:

create function 存儲函數名(參數)

示例:

若是刪除給定球員參加的所有比賽,具體代碼為:

mysql> delimiter $$  #將語句的結束符號從分號;臨時改為兩個$$(可以為自定義)

mysql> CREATE PROCEDURE delete_matches(IN p_playerno INTEGER)

    -> BEGIN

    ->   DELETE FROM MATCHES

    ->    WHERE playerno = p_playerno;

    -> END$$

Query OK, 0 rows affected (0.01 sec)

mysql> delimiter;  #將語句的結束符號恢復為分號

以上就是小編的分享了,希望能夠幫助到大家。

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

mysql存儲過程實例詳解

mysql中存儲過程是屬于一種在數據庫中存儲復雜程序,以便于外部程序調用的一種數據庫對象。存儲過程一般來說是為了完成特定功能的SQL語句集,經過編譯后創建并保存在數據庫中,用戶可以通過指定存儲過程的名字并給定參數(通常是在需要時)來進行調用執行。
推薦度:
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 欧美 第一页| 亚洲欧美日韩成人一区在线 | 久久久国产精品视频 | 欧美精品国产日韩综合在线 | 日韩欧美国产精品第一页不卡 | 任你躁欧美一级在线精品免费 | 亚洲欧美国产精品 | 亚洲精品成人久久 | 九九热免费视频 | 久久亚洲精品中文字幕60分钟 | 亚洲好骚综合 | 精品在线一区二区 | 天天做天天爱夜夜爽毛片毛片 | 久久99精品久久久久久青青91 | 97久久综合区小说区图片专区 | 一级毛片免费观看 | 国产欧美日韩一区二区三区在线 | 图片专区亚洲 欧美 另类 | 91欧美精品| 欧美日韩亚洲综合 | 国产在线视频资源 | 日本激情网址 | 国产福利视精品永久免费 | 日本a级免费| 日韩一区二区三区在线播放 | 国产免费一区二区三区免费视频 | 一区二区三区美女 | 日本三级韩国三级欧美三级 | 美女视频黄a视频全免费网站一区 | 91一区二区三区 | 亚洲精品99久久久久中文字幕 | 亚洲精国产一区二区三区 | 一区二区三区电影 | 欧美性俄罗斯18精品 | 日韩日韩日韩 | 国产精品第一区在线观看 | 久久精品屋 | 青青热久久国产久精品秒播 | 欧美gv在线 | 国产日韩欧美在线观看不卡 | 91久久国产综合精品女同我 |