首頁  >  文章  >  資料庫  >  解析MySQL預存程序、常用函數程式碼

解析MySQL預存程序、常用函數程式碼

coldplay.xixi
coldplay.xixi轉載
2020-08-20 16:04:241891瀏覽

解析MySQL預存程序、常用函數程式碼

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複合語句

通常出現在在預存程序、函數和觸發器中,其中可以包含一個或多個語句,每個語句用;隔開。

相關學習推薦:mysql教學

以上是解析MySQL預存程序、常用函數程式碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:jb51.net。如有侵權,請聯絡admin@php.cn刪除