mysql儲存函數怎麼用?

藏色散人
發布: 2020-09-19 13:59:23
原創
2474 人瀏覽過

mysql儲存函數怎麼用?

什麼是儲存函數:

#封裝一段sql程式碼,完成一個特定的功能,傳回結果。

儲存函數的語法: 

  create function 函数([函数参数[,….]]) Returns 返回类型
  Begin
    If(
      Return (返回的数据)
    Else 
      Return (返回的数据)
    end if;
  end;
登入後複製

例如:

 create function count_news(hits int) returns int
登入後複製

與預存程序傳回參數不同的是儲存函數在定義時沒用直接聲明哪個變數是傳回參數,而只是使用了returns宣告了傳回參數所屬的資料類型,傳回參數是在函數體中使用return傳回要傳回的資料變數的形式來表示的。這就需要注意的是:
儲存函數只支援輸入參數,且輸入參數前沒有IN或INOUT.

儲存函數中的限制

#流控制(Flow-of-control)語句(IF, CASE, WHILE, LOOP, WHILE, REPEAT, LEAVE,ITERATE)也是合法的. 
變數宣告(DECLARE)以及指派(SET)是合法的.
允許條件宣告. 
異常處理宣告也是允許的. 
#但在這裡要記住函數有受限條件:不能在函數中存取表。因此在函數中使用以下語句是非法的。 

ALTER 'CACHE INDEX' CALL COMMIT CREATE DELETE 
DROP 'FLUSH PRIVILEGES' GRANT INSERT KILL 
LOCK OPTIMIZE REPAIR REPLACE REVOKE 
ROLLBACK SAVEPOINT 'SELECT FROM table' 
'SET system variable' 'SET TRANSACTION' 
SHOW 'START TRANSACTION' TRUNCATE UPDATE
登入後複製

相關學習推薦:mysql資料庫

以上是mysql儲存函數怎麼用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板