mysql存儲(chǔ)過(guò)程的概念:
存儲(chǔ)在數(shù)據(jù)庫(kù)當(dāng)中可以執(zhí)行特定工作(查詢(xún)和更新)的一組SQL代碼的程序段。
mysql函數(shù)的概念:
函數(shù)是完成特定功能的SQL語(yǔ)句,函數(shù)分為內(nèi)置函數(shù)和自定義函數(shù)(user-defined function UDF)
MySQL存儲(chǔ)過(guò)程和函數(shù)的區(qū)別
- 存儲(chǔ)過(guò)程可以有多個(gè)in,out,inout參數(shù),而函數(shù)只有輸入?yún)?shù)類(lèi)型,而且不能帶in.
- 存儲(chǔ)過(guò)程實(shí)現(xiàn)的功能要復(fù)雜一些;而函數(shù)的單一功能性(針對(duì)性)更強(qiáng)。
- 存儲(chǔ)過(guò)程可以返回多個(gè)值;存儲(chǔ)函數(shù)只能有一個(gè)返回值。
- 存儲(chǔ)過(guò)程一般獨(dú)立的來(lái)執(zhí)行;而存儲(chǔ)函數(shù)可以作為其它sql語(yǔ)句的組成部分來(lái)出現(xiàn)。
- 存儲(chǔ)過(guò)程可以調(diào)用存儲(chǔ)函數(shù)。函數(shù)不能調(diào)用存儲(chǔ)過(guò)程。
存儲(chǔ)過(guò)程是為了完成特定功能的sql語(yǔ)句集,經(jīng)編譯創(chuàng)建并保存在數(shù)據(jù)庫(kù)中。思想就是數(shù)據(jù)庫(kù)sql語(yǔ)言層面的代碼封裝與重用。
注:in指輸入?yún)?shù),out指輸出參數(shù)

創(chuàng)建自定義function
語(yǔ)法格式:create 函數(shù)名(參數(shù) 類(lèi)型,參數(shù) 類(lèi)型...) returns 類(lèi)型 return 表達(dá)式值;
注:1.參數(shù)可以沒(méi)有,或者有多個(gè)。
2.必須有返回值,且只有一個(gè)。
3.如果有SQL語(yǔ)句的話要放在begin...end中間。
4.不加determministic會(huì)報(bào)錯(cuò)(不知道咋解決)

begin...end復(fù)合語(yǔ)句
通常出現(xiàn)在存儲(chǔ)過(guò)程、函數(shù)和觸發(fā)器中,其中可以包含一個(gè)或多個(gè)語(yǔ)句,每個(gè)語(yǔ)句用;隔開(kāi)。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:- MYSQL的存儲(chǔ)過(guò)程和函數(shù)簡(jiǎn)單寫(xiě)法
- MySQL存儲(chǔ)過(guò)程中的基本函數(shù)和觸發(fā)器的相關(guān)學(xué)習(xí)教程
- MySql存儲(chǔ)過(guò)程與函數(shù)詳解
- Mysql存儲(chǔ)過(guò)程和函數(shù)區(qū)別介紹
- mysql 導(dǎo)入導(dǎo)出數(shù)據(jù)庫(kù)以及函數(shù)、存儲(chǔ)過(guò)程的介紹
- 深入mysql創(chuàng)建自定義函數(shù)與存儲(chǔ)過(guò)程的詳解
- mysql 查詢(xún)數(shù)據(jù)庫(kù)中的存儲(chǔ)過(guò)程與函數(shù)的語(yǔ)句
- mysql中存儲(chǔ)過(guò)程、函數(shù)的一些問(wèn)題