您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關(guān)mysql如何創(chuàng)建存儲(chǔ)函數(shù)的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧。
存儲(chǔ)函數(shù)是由SQL語(yǔ)句和過(guò)程式語(yǔ)句所組成的代碼片段,它可以被應(yīng)用程序和其他SQL語(yǔ)句所調(diào)用,在MySQL中可以通過(guò)CREATE FUNCTION語(yǔ)句來(lái)創(chuàng)建存儲(chǔ)函數(shù)
存儲(chǔ)函數(shù)就是返回單個(gè)值的特殊類型的存儲(chǔ)程序,接下來(lái)將在文章中為大家詳細(xì)介紹如何在MySQL中創(chuàng)建存儲(chǔ)函數(shù),具有一定的參考價(jià)值,希望對(duì)大家有所幫助。
存儲(chǔ)函數(shù)
存儲(chǔ)函數(shù)與存儲(chǔ)過(guò)程很相似,都是由SQL語(yǔ)句和過(guò)程式語(yǔ)句所組成的代碼片段,并且可以被應(yīng)用程序和其他SQL語(yǔ)句調(diào)用。由于存儲(chǔ)函數(shù)本身就是輸出函數(shù),因此它不能擁有輸出參數(shù),另外可以不用call語(yǔ)句就可以直接對(duì)存儲(chǔ)函數(shù)進(jìn)行調(diào)用。
存儲(chǔ)函數(shù)的創(chuàng)建
語(yǔ)法
CREATE FUNCTION function_name(param1,param2,…) RETURNS datatype [NOT] DETERMINISTIC statements SQL
語(yǔ)法解析:
CREATE FUNCTION子句后面是指定存儲(chǔ)函數(shù)的名稱
(param1,param2,…) :表示的是存儲(chǔ)函數(shù)的所有參數(shù),在默認(rèn)情況下,所有參數(shù)均為IN參數(shù)。不能為參數(shù)指定IN,OUT或INOUT修飾符。
RETURNS datatype :表示:返回值的數(shù)據(jù)類型,它可以是任何有效的MySQL數(shù)據(jù)類型
[NOT] DETERMINISTIC:表示結(jié)果是不確定的,相同的輸入可能得到不同的輸出。如果沒(méi)有指定任意一個(gè)值,默認(rèn)為[NOT] DETERMINISTIC
SQL:程序主體
例:創(chuàng)建一個(gè)名為demo的存儲(chǔ)函數(shù),該函數(shù)返回 SELECT 語(yǔ)句的查詢結(jié)果,數(shù)值類型為字符串型。代碼如下:
mysql> DELIMITER // mysql> CREATE FUNCTION demo() -> RETURNS CHAR(50) -> RETURN ( SELECT s_name FROM suppliers WHERE s_call='48075'); -> // Query OK, 0 rows affected (0.11 sec) mysql> DELIMITER ;
感謝各位的閱讀!關(guān)于mysql如何創(chuàng)建存儲(chǔ)函數(shù)就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。