最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL的存儲函數(shù)與存儲過程的區(qū)別解析

 更新時間:2022年04月08日 11:45:35   作者:王小王-123  
這篇文章主要介紹了MySQL的存儲函數(shù)與存儲過程的區(qū)別,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

MySQL存儲函數(shù)(自定義函數(shù)),函數(shù)一般用于計算和返回一個值,可以將經(jīng)常需要使用的計算或功能寫成一個函數(shù)。

存儲函數(shù)和存儲過程一樣,都是在數(shù)據(jù)庫中定義一些 SQL 語句的集合。

存儲函數(shù)與存儲過程的區(qū)別

1.存儲函數(shù)有且只有一個返回值,而存儲過程可以有多個返回值,也可以沒有返回值。

2.存儲函數(shù)只能有輸入?yún)?shù),而且不能帶in, 而存儲過程可以有多個in,out,inout參數(shù)。

3.存儲過程中的語句功能更強大,存儲過程可以實現(xiàn)很復(fù)雜的業(yè)務(wù)邏輯,而函數(shù)有很多限制,如不能在函數(shù)中使用insert,update,delete,create等語句;

4.存儲函數(shù)只完成查詢的工作,可接受輸入?yún)?shù)并返回一個結(jié)果,也就是函數(shù)實現(xiàn)的功能針對性比較強。

5.存儲過程可以調(diào)用存儲函數(shù)、但函數(shù)不能調(diào)用存儲過程。

6.存儲過程一般是作為一個獨立的部分來執(zhí)行(call調(diào)用)。而函數(shù)可以作為查詢語句的一個部分來調(diào)用.

create function func_name ([param_name type[,...]])
returns type
[characteristic ...] 
begin
    routine_body
end;

參數(shù)說明:
(1)func_name :存儲函數(shù)的名稱。
(2)param_name type:可選項,指定存儲函數(shù)的參數(shù)。type參數(shù)用于指定存儲函數(shù)的參數(shù)類型,該類型可以是MySQL數(shù)據(jù)庫中所有支持的類型。
(3)RETURNS type:指定返回值的類型。
(4)characteristic:可選項,指定存儲函數(shù)的特性。
(5)routine_body:SQL代碼內(nèi)容。

create database mydb9_function;
-- 導(dǎo)入測試數(shù)據(jù)
use mydb9_function;
set global log_bin_trust_function_creators=TRUE; -- 信任子程序的創(chuàng)建者
 
-- 創(chuàng)建存儲函數(shù)-沒有輸輸入?yún)?shù)
drop function if exists myfunc1_emp;
 
delimiter $$
create function myfunc1_emp() returns int
begin
  declare cnt int default 0;
    select count(*) into  cnt from emp;
  return cnt;
end $$
delimiter ;
-- 調(diào)用存儲函數(shù)
select myfunc1_emp();
-- 創(chuàng)建存儲過程-有輸入?yún)?shù)
drop function if exists myfunc2_emp;
delimiter $$
create function myfunc2_emp(in_empno int) returns varchar(50)
begin
    declare out_name varchar(50);
    select ename into out_name from emp where  empno = in_empno;
    return out_name;
end $$
delimiter ;
select myfunc2_emp(1008);

到此這篇關(guān)于MySQL的存儲函數(shù)與存儲過程的區(qū)別的文章就介紹到這了,更多相關(guān)MySQL的存儲函數(shù)與存儲過程內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Mysql查詢表中最小可用id值的方法

    Mysql查詢表中最小可用id值的方法

    這篇文章主要介紹了Mysql查詢表中最小可用id值的方法,在文中通過sql語句給大家介紹了MySQL中刪除id為最小的數(shù)據(jù),需要的朋友可以參考下
    2018-10-10
  • mysql登錄遇到ERROR 1045問題解決方法

    mysql登錄遇到ERROR 1045問題解決方法

    mysql登錄時出現(xiàn)了錯誤:ERROR 1045: Access denied for user,究竟是什么原因呢?接下來為你詳細(xì)介紹下,感興趣的你可以參考下哈,或許可以幫助到你
    2013-03-03
  • MySQL數(shù)據(jù)表使用的SQL語句整理

    MySQL數(shù)據(jù)表使用的SQL語句整理

    這篇文章主要介紹了MySQL數(shù)據(jù)表使用的SQL語句整理,文章基于MySQL的相關(guān)資料展開舉例說明,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-05-05
  • MySQL對中文進(jìn)行排序詳解及實例

    MySQL對中文進(jìn)行排序詳解及實例

    這篇文章主要介紹了MySQL對中文進(jìn)行排序詳解及實例的相關(guān)資料,需要的朋友可以參考下
    2017-05-05
  • MySQL數(shù)據(jù)庫優(yōu)化之分表分庫操作實例詳解

    MySQL數(shù)據(jù)庫優(yōu)化之分表分庫操作實例詳解

    這篇文章主要介紹了MySQL數(shù)據(jù)庫優(yōu)化之分表分庫操作,結(jié)合實例形式詳細(xì)分析了mysql數(shù)據(jù)庫分表分庫垂直拆分、水平拆分相關(guān)原理以及應(yīng)用案例,需要的朋友可以參考下
    2020-01-01
  • mysql修改用戶密碼報錯的解決方法

    mysql修改用戶密碼報錯的解決方法

    mysql 初始化時,使用臨時密碼,修改自定義密碼時,由于自定義密碼比較簡單,就出現(xiàn)了不符合密碼策略的問題,這篇文章主要介紹了mysql修改用戶密碼報錯,需要的朋友可以參考下
    2023-03-03
  • MySQL中is?null和=null的區(qū)別及說明

    MySQL中is?null和=null的區(qū)別及說明

    這篇文章主要介紹了MySQL中is?null和=null的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • MySQL窗口函數(shù)OVER使用示例詳細(xì)講解

    MySQL窗口函數(shù)OVER使用示例詳細(xì)講解

    這篇文章主要介紹了MySQL窗口函數(shù)OVER()用法及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • MySQL學(xué)習(xí)之基礎(chǔ)操作總結(jié)

    MySQL學(xué)習(xí)之基礎(chǔ)操作總結(jié)

    MySQL 是最流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),在WEB應(yīng)用方面 MySQL 是最好的。本文將為大家詳細(xì)介紹一下MySQL的基礎(chǔ)操作,需要的可以參考一下
    2022-03-03
  • MySQL慢查詢中的commit慢和binlog中慢事務(wù)的區(qū)別

    MySQL慢查詢中的commit慢和binlog中慢事務(wù)的區(qū)別

    這篇文章主要介紹了MySQL慢查詢中的commit慢和binlog中慢事務(wù)的差異,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-06-06

最新評論

丽江市| 黄平县| 合川市| 玉山县| 商河县| 西华县| 屯门区| 徐州市| 连江县| 平陆县| 额尔古纳市| 汤原县| 娱乐| 项城市| 琼结县| 定结县| 任丘市| 开江县| 贵州省| 措勤县| 华容县| 和龙市| 渑池县| 年辖:市辖区| 南开区| 新蔡县| 黄龙县| 湘乡市| 铜山县| 民丰县| 松滋市| 阿克| 临桂县| 昌图县| 洛隆县| 重庆市| 肇源县| 临高县| 溧水县| 广州市| 柳州市|