Mysql存儲進程和函數差別引見。本站提示廣大學習愛好者:(Mysql存儲進程和函數差別引見)文章只能為提供參考,不一定能成為您想要的結果。以下是Mysql存儲進程和函數差別引見正文
存儲進程是用戶界說的一系列sql語句的聚集,觸及特定表或其它對象的義務,用戶可以挪用存儲進程,而函數平日是數據庫已界說的辦法,它吸收參數並前往某品種型的值而且不觸及特定用戶表。
存儲進程和函數存在以下幾個差別:
1)普通來講,存儲進程完成的功效要龐雜一點,而函數的完成的功效針對性比擬強。存儲進程,功效壯大,可以履行包含修正表等一系列數據庫操作;用戶界說函數不克不及用於履行一組修正全局數據庫狀況的操作。
2)關於存儲進程來講可以前往參數,如記載集,而函數只能前往值或許表對象。函數只能前往一個變量;而存儲進程可以前往多個。存儲進程的參數可以有IN,OUT,INOUT三品種型,而函數只能有IN類~~存儲進程聲明時不須要前往類型,而函數聲明時須要描寫前往類型,且函數體中必需包括一個有用的RETURN語句。
3)存儲進程,可使用非肯定函數,不許可在用戶界說函數主體中內置非肯定函數。
4)存儲進程普通是作為一個自力的部門來履行( EXECUTE 語句履行),而函數可以作為查詢語句的一個部門來挪用(SELECT挪用),因為函數可以前往一個表對象,是以它可以在查詢語句中位於FROM症結字的前面。 SQL語句中弗成用存儲進程,而可使用函數。