MySQL儲存過程及常用函式程式碼解析
阿新 • • 發佈:2020-08-28
mysql儲存過程的概念:
儲存在資料庫當中可以執行特定工作(查詢和更新)的一組SQL程式碼的程式段。
mysql函式的概念:
函式是完成特定功能的SQL語句,函式分為內建函式和自定義函式(user-defined function UDF)
MySQL儲存過程和函式的區別
- 儲存過程可以有多個in,out,inout引數,而函式只有輸入引數型別,而且不能帶in.
- 儲存過程實現的功能要複雜一些;而函式的單一功能性(針對性)更強。
- 儲存過程可以返回多個值;儲存函式只能有一個返回值。
- 儲存過程一般獨立的來執行;而儲存函式可以作為其它sql語句的組成部分來出現。
- 儲存過程可以呼叫儲存函式。函式不能呼叫儲存過程。
儲存過程是為了完成特定功能的sql語句集,經編譯建立並儲存在資料庫中。思想就是資料庫sql語言層面的程式碼封裝與重用。
注:in指輸入引數,out指輸出引數
建立自定義function
語法格式:create 函式名(引數 型別,引數 型別...) returns 型別 return 表示式值;
注:1.引數可以沒有,或者有多個。
2.必須有返回值,且只有一個。
3.如果有SQL語句的話要放在begin...end中間。
4.不加determministic會報錯(不知道咋解決)
begin...end複合語句
通常出現在儲存過程、函式和觸發器中,其中可以包含一個或多個語句,每個語句用;隔開。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。