mysql存储过程——procedure[prəˈsiːdʒər]
【實(shí)施工程師】必備技能——mysql存儲(chǔ)過程procedure[pr??si?d??r]?
存儲(chǔ)過程在創(chuàng)建時(shí)與創(chuàng)建函數(shù)相同,首先都需要臨時(shí)修改語句結(jié)束符號(hào)。然后再利用CREATE語句進(jìn)行創(chuàng)建,其基本語法格式如下:
DELIMITER? 新結(jié)束符號(hào)
CREATE? PROCEDURE? 過程名字([[ IN? |? OUT? |? INOUT]? 參數(shù)名稱 參數(shù)類型])
BEGIN
? 過程體
END
在上述語法中,創(chuàng)建存儲(chǔ)過程的關(guān)鍵字為PROCEDURE,在為存儲(chǔ)過程設(shè)置參數(shù)時(shí),在參數(shù)名前還可以指定參數(shù)的來源及用途,可選值分別為IN(默認(rèn)值)、OUT和IN OUT。
IN、OUT、INOUT三者的區(qū)別如下所示:
IN:表示輸入?yún)?shù),即參數(shù)是在調(diào)用存儲(chǔ)過程時(shí)傳入到存儲(chǔ)過程里面使用,傳入的數(shù)據(jù)可以是直接數(shù)據(jù)(如5),也可以是保存數(shù)據(jù)的變量。
OUT:表示輸出參數(shù),初始值為NULL,它是將存儲(chǔ)過程中的值保存到OUT指定的參數(shù)中,返回給調(diào)用者。
IN OUT:表示輸入輸出參數(shù),即參數(shù)在調(diào)用時(shí)傳入到存儲(chǔ)過程,同時(shí)在存儲(chǔ)過程中操作之后,又可將數(shù)據(jù)返回為調(diào)用者。
實(shí)例
測(cè)試數(shù)據(jù):
編寫存儲(chǔ)過程:
delimiter $$ create procedure u_info(in InUserName varchar(50)) beginselect * from users where userName=InUserName; end $$ delimiter ; call u_info('admin');執(zhí)行效果: (call 存儲(chǔ)過程名稱)
?存儲(chǔ)過程可以放大處理,編寫內(nèi)容多一些,例如利用循環(huán)添加個(gè)幾十萬條數(shù)據(jù)都可以。或者比較復(fù)雜的查詢操作,都很方便的。
與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的mysql存储过程——procedure[prəˈsiːdʒər]的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql事务操作——transacti
- 下一篇: 好书推荐——CSDN《新程序员》