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

MySQL存儲過程圖文實例講解

 更新時間:2022年03月09日 15:56:27   作者:程裕強  
雖然MySQL的存儲過程一般情況下是不會使用到的,但是在一些特殊場景中,還是有需求的,下面這篇文章主要給大家介紹了關(guān)于MySQL存儲過程的相關(guān)資料,需要的朋友可以參考下

MySQL的存儲過程

存儲過程是數(shù)據(jù)庫的一個重要的功能,MySQL 5.0以前并不支持存儲過程,這使得MySQL在應(yīng)用上大打折扣。好在MySQL 5.0開始支持存儲過程,這樣即可以大大提高數(shù)據(jù)庫的處理速度,同時也可以提高數(shù)據(jù)庫編程的靈活性。

MySQL存儲過程的創(chuàng)建

語法

CREATE PROCEDURE  過程名([[IN|OUT|INOUT] 參數(shù)名 數(shù)據(jù)類型[,[IN|OUT|INOUT] 參數(shù)名 數(shù)據(jù)類型…]]) [特性 ...] 過程體

DELIMITER //
  CREATE PROCEDURE myproc(OUT s int)
    BEGIN
      SELECT COUNT(*) INTO s FROM students;
    END
    //
DELIMITER ;

分隔符

MySQL默認(rèn)以";"為分隔符,如果沒有聲明分割符,則編譯器會把存儲過程當(dāng)成SQL語句進行處理,因此編譯過程會報錯,所以要事先用“DELIMITER //”聲明當(dāng)前段分隔符,讓編譯器把兩個"//"之間的內(nèi)容當(dāng)做存儲過程的代碼,不會執(zhí)行這些代碼;“DELIMITER ;”的意為把分隔符還原。

參數(shù)

存儲過程根據(jù)需要可能會有輸入、輸出、輸入輸出參數(shù),如果有多個參數(shù)用","分割開。MySQL存儲過程的參數(shù)用在存儲過程的定義,共有三種參數(shù)類型,IN,OUT,INOUT:

IN參數(shù)的值必須在調(diào)用存儲過程時指定,在存儲過程中修改該參數(shù)的值不能被返回,為默認(rèn)值OUT:該值可在存儲過程內(nèi)部被改變,并可返回INOUT:調(diào)用時指定,并且可被改變和返回

過程體

過程體的開始與結(jié)束使用BEGIN與END進行標(biāo)識。

1、簡單實例

create procedure demo.p_test1()
begin
  -- 使用 declare語句聲明一個變量
  declare id int default 0;
  declare name varchar(50) default '';
  -- 使用set語句給變量賦值
  set id=7521;
  -- 將users表中id=1的名稱賦值給username
  select ename into name from demo.emp where empno=id;
  -- 返回變量
  select name;
end;

2、通過游標(biāo)遍歷結(jié)果集

create table demo.test(
	id int,
	cnt varchar(50)
)
create procedure demo.p_test2()
-- 通過游標(biāo)遍歷結(jié)果集
begin
  -- 聲明變量
  declare id int default 0;
  declare name varchar(50) default '';
  declare done boolean default 1;
  -- 聲明游標(biāo)
  declare rs cursor for SELECT deptno,dname from demo.dept ;
  -- 定義異常:
  declare continue handler for SQLSTATE '02000' SET done = 0; 
  -- 打開游標(biāo)
  open rs;
  delete from demo.test;
  while done do 
  	begin
	  fetch rs into id,name;
      INSERT into demo.test SELECT e.deptno,count(1) from demo.emp e WHERE e.deptno =id group by e.deptno;
     end ;
  end while;
  -- 關(guān)閉游標(biāo)
  close rs;
end;
call demo.p_test2();

SELECT * from  demo.test;

總結(jié) 

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

相關(guān)文章

  • MYSQL自定義函數(shù)判斷是否正整數(shù)的實例代碼

    MYSQL自定義函數(shù)判斷是否正整數(shù)的實例代碼

    這篇文章主要介紹了MYSQL自定義函數(shù)判斷是否正整數(shù) 的實例代碼,主要是使用正則表達式來判斷,具體實例代碼大家跟隨小編一起通過本文學(xué)習(xí)吧
    2018-11-11
  • mysql分區(qū)表學(xué)習(xí)之日期分區(qū)

    mysql分區(qū)表學(xué)習(xí)之日期分區(qū)

    這篇文章主要給大家介紹了關(guān)于mysql分區(qū)表學(xué)習(xí)之日期分區(qū)的相關(guān)資料,分區(qū)是一種表的設(shè)計模式,通俗地講表分區(qū)是將一大表,根據(jù)條件分割成若干個小表,需要的朋友可以參考下
    2023-08-08
  • MySQL數(shù)據(jù)庫維護中監(jiān)控所用到的常用命令

    MySQL數(shù)據(jù)庫維護中監(jiān)控所用到的常用命令

    這篇文章主要介紹額MySQL監(jiān)控時常用的的幾個MySQL命令,需要的朋友可以收藏下
    2013-08-08
  • 解析SQLite中的常見問題與總結(jié)詳解

    解析SQLite中的常見問題與總結(jié)詳解

    本篇文章是對SQLite中的常見問題進行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • mysql清除log-bin日志的方法

    mysql清除log-bin日志的方法

    這篇文章主要介紹了mysql清除log-bin日志的方法,同時介紹了log-bin日志的作用,需要的朋友可以參考下
    2014-06-06
  • MySQL表的CURD使用

    MySQL表的CURD使用

    文章主要介紹了MySQL數(shù)據(jù)庫操作的基本方法,包括創(chuàng)建表、插入數(shù)據(jù)、查詢數(shù)據(jù)、更新數(shù)據(jù)和刪除數(shù)據(jù)等,涵蓋了表結(jié)構(gòu)設(shè)計、數(shù)據(jù)插入、查詢條件、排序、分頁、更新和刪除操作,以及聚合函數(shù)和GROUP BY子句的使用
    2025-02-02
  • win10上如何安裝mysql5.7.16(解壓縮版)

    win10上如何安裝mysql5.7.16(解壓縮版)

    這篇文章主要介紹了win10上如何安裝mysql5.7.16(解壓縮版)的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-12-12
  • MySQL字符串索引更合理的創(chuàng)建規(guī)則討論

    MySQL字符串索引更合理的創(chuàng)建規(guī)則討論

    這篇文章主要給大家介紹了關(guān)于MySQL字符串索引更合理的創(chuàng)建規(guī)則,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用MySQL具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • 淺析Mysql 中如何導(dǎo)出數(shù)據(jù)

    淺析Mysql 中如何導(dǎo)出數(shù)據(jù)

    MySQL中你可以使用SELECT…INTO OUTFILE語句來簡單的導(dǎo)出數(shù)據(jù)到文本文件上,這篇文章給大家介紹了Mysql 中如何導(dǎo)出數(shù)據(jù),感興趣的朋友跟隨小編一起看看吧
    2023-11-11
  • MySQL排序中使用CASE WHEN的方法示例

    MySQL排序中使用CASE WHEN的方法示例

    這篇文章主要給大家介紹了關(guān)于MySQL排序中使用CASE WHEN的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-01-01

最新評論

北京市| 定安县| 和龙市| 四子王旗| 财经| 太湖县| 芮城县| 大安市| 商丘市| 东莞市| 武川县| 定襄县| 东城区| 屏东市| 阿合奇县| 商河县| 晋江市| 望江县| 岢岚县| 容城县| 诸城市| 长泰县| 陈巴尔虎旗| 金昌市| 岫岩| 河北省| 台湾省| 东兴市| 丘北县| 通山县| 简阳市| 石狮市| 鞍山市| 临洮县| 定日县| 光山县| 邓州市| 泰来县| 崇信县| 万州区| 黄石市|