首頁 >資料庫 >mysql教程 >mysql儲存函數怎麼用?

mysql儲存函數怎麼用?

藏色散人
藏色散人原創
2019-05-20 13:35:162526瀏覽

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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

相關文章

看更多