亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

navicat中創(chuàng)建存儲(chǔ)過(guò)程、觸發(fā)器和使用游標(biāo)的簡(jiǎn)單實(shí)例(圖文)

 更新時(shí)間:2017年02月05日 20:12:59   投稿:mdxy-dxy  
這篇文章主要介紹了navicat中創(chuàng)建存儲(chǔ)過(guò)程、觸發(fā)器和使用游標(biāo)的簡(jiǎn)單實(shí)例,需要的朋友可以參考下

1、建表
首先先建兩張表(users表和number表),具體設(shè)計(jì)如下圖:
1.jpg
2.jpg

2、存儲(chǔ)過(guò)程
寫一個(gè)存儲(chǔ)過(guò)程,往users表中插入數(shù)據(jù),創(chuàng)建過(guò)程如下:
3.jpg
4.jpg
5.jpg

代碼如下

BEGIN
 #Routine body goes here...
 declare n bigint;
 set n = 201121029684;
 while n <= 201121029694
 do
 insert into users(student_ID) values(n);
 set n = n + 1;
 end while;
END

6.jpg
執(zhí)行存儲(chǔ)過(guò)程后可以看到users表中的數(shù)據(jù)如下:
7.jpg

整個(gè)存儲(chǔ)過(guò)程的編寫就完成了,當(dāng)然這只是一個(gè)極為簡(jiǎn)單的例子,僅供入門參考。

3、觸發(fā)器

在寫觸發(fā)器之前,我們先把users的數(shù)據(jù)清空

truncate table users; 

現(xiàn)在我們有兩個(gè)表,我要做的事情就是,當(dāng)我往users中插入數(shù)據(jù)后,number中也相應(yīng)變化:

例如,number表中有一條初始數(shù)據(jù),id=1,num=0;

當(dāng)我往users中插入一條數(shù)據(jù)后,就觸發(fā)number表中的num字段就加1,也就是記錄用戶數(shù)。

下面我們來(lái)實(shí)現(xiàn)這個(gè)小小的功能。

右擊users表,選擇設(shè)計(jì)表

8.jpg
選擇觸發(fā)器選項(xiàng)
9.jpg
10.jpg
11.jpg

begin
 update number
 set num = (select count(*) from users) ;
end

保存后,再往users表中添加新數(shù)據(jù),再查看一下number中的數(shù)據(jù),你會(huì)神奇的發(fā)現(xiàn),number表中的數(shù)據(jù)也變了,自己動(dòng)手試一下吧!

ps:存儲(chǔ)過(guò)程需要程序員自己去執(zhí)行,觸發(fā)器,顧名思義,自動(dòng)觸發(fā)。

4、游標(biāo)使用
我現(xiàn)在想做的是將student_ID字段都加上100,通過(guò)這個(gè)例子簡(jiǎn)單展示一下游標(biāo)的使用。

創(chuàng)建一個(gè)存儲(chǔ)過(guò)程,創(chuàng)建方式參考上面步驟。存儲(chǔ)過(guò)程代碼如下:

12.jpg

BEGIN
 #Routine body goes here...

 declare tmp bigint default 0;
 declare cur CURSOR FOR SELECT student_ID FROM users; -- 定義游標(biāo)
 /*
 02000 發(fā)生下述異常之一: 
 SELECT INTO 語(yǔ)句或 INSERT 語(yǔ)句的子查詢的結(jié)果為空表。 
 在搜索的 UPDATE 或 DELETE 語(yǔ)句內(nèi)標(biāo)識(shí)的行數(shù)為零。 
 在 FETCH 語(yǔ)句中引用的游標(biāo)位置處于結(jié)果表最后一行之后。


 */
 declare CONTINUE HANDLER FOR SQLSTATE '02000' set tmp = 0; 


 OPEN cur; -- 打開游標(biāo)
 FETCH cur INTO tmp; -- 游標(biāo)向下走一步


 WHILE(tmp != 0)
 DO 
 select tmp; -- 將tmp打印出來(lái),會(huì)發(fā)現(xiàn)tmp就像一個(gè)指針,一開始指向第一行,游標(biāo)走一步,則指向下一行記錄


 UPDATE users
 SET student_ID = tmp + 100
 WHERE student_ID = tmp;
 FETCH cur INTO tmp;
 END WHILE;

 CLOSE cur; -- 關(guān)閉游標(biāo)
END

執(zhí)行上面的存儲(chǔ)過(guò)程,你會(huì)發(fā)現(xiàn),users中的數(shù)據(jù)如你所愿的發(fā)生了變化。

相關(guān)文章

  • K8s中MySQL?數(shù)據(jù)持久化存儲(chǔ)的實(shí)現(xiàn)

    K8s中MySQL?數(shù)據(jù)持久化存儲(chǔ)的實(shí)現(xiàn)

    本文主要介紹了K8s中MySQL?數(shù)據(jù)持久化存儲(chǔ)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • MySQL大小寫敏感導(dǎo)致的問(wèn)題分析

    MySQL大小寫敏感導(dǎo)致的問(wèn)題分析

    在本篇內(nèi)容里小編給大家整理了關(guān)于MySQL大小寫敏感導(dǎo)致的問(wèn)題的詳細(xì)分析,有興趣的朋友們可以學(xué)習(xí)參考下。
    2019-06-06
  • 淺談mysql的timestamp存在的時(shí)區(qū)問(wèn)題

    淺談mysql的timestamp存在的時(shí)區(qū)問(wèn)題

    本文主要介紹了淺談mysql的timestamp存在的時(shí)區(qū)問(wèn)題,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • Mysqlslap MySQL壓力測(cè)試工具 簡(jiǎn)單教程

    Mysqlslap MySQL壓力測(cè)試工具 簡(jiǎn)單教程

    Mysqlslap是從5.1.4版開始的一個(gè)MySQL官方提供的壓力測(cè)試工具。通過(guò)模擬多個(gè)并發(fā)客戶端訪問(wèn)MySQL來(lái)執(zhí)行壓力測(cè)試,同時(shí)詳細(xì)的提供了“高負(fù)荷攻擊MySQL”的數(shù)據(jù)性能報(bào)告。并且能很好的對(duì)比多個(gè)存儲(chǔ)引擎在相同環(huán)境下的并發(fā)壓力性能差別
    2011-10-10
  • win32 mysql 5.7.27 安裝配置方法圖文教程

    win32 mysql 5.7.27 安裝配置方法圖文教程

    這篇文章主要為大家詳細(xì)介紹了win32 mysql 5.7.27 安裝配置方法圖文教程,文中安裝步驟介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • mysql select緩存機(jī)制使用詳解

    mysql select緩存機(jī)制使用詳解

    這篇文章主要介紹了mysql select緩存機(jī)制使用詳解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-06-06
  • MYSQL使用Union將兩張表的數(shù)據(jù)合并顯示

    MYSQL使用Union將兩張表的數(shù)據(jù)合并顯示

    使用union操作符會(huì)將多張表中相同的數(shù)據(jù)取值一次,如果想將表1和表2中的值完整的顯示出來(lái),可以使用union all,今天通過(guò)本文給大家分享MYSQL使用Union將兩張表的數(shù)據(jù)合并顯示功能,需要的朋友參考下吧
    2021-08-08
  • MySQL設(shè)置表自增步長(zhǎng)的方法

    MySQL設(shè)置表自增步長(zhǎng)的方法

    自增字段是一種常見且重要的功能,通常用于生成唯一的標(biāo)識(shí)符,本文主要介紹了MySQL設(shè)置表自增步長(zhǎng)的方法,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-08-08
  • Mysql賬號(hào)管理與引擎相關(guān)功能實(shí)現(xiàn)流程

    Mysql賬號(hào)管理與引擎相關(guān)功能實(shí)現(xiàn)流程

    Mysql中的每一種技術(shù)都使用不同的存儲(chǔ)機(jī)制、索引技巧、鎖定水平、并且最終提供廣泛的不同功能和能力。通過(guò)選擇不同的技術(shù),你能夠獲得額外的速度或者功能,從而改善應(yīng)用的整體功能。這些不同的技術(shù)以及配套的相關(guān)功能在MySQL中被稱作存儲(chǔ)引擎
    2022-10-10
  • MySQL 5.7.18 免安裝版配置教程

    MySQL 5.7.18 免安裝版配置教程

    這篇文章主要為大家詳細(xì)介紹了MySQL 5.7.18 免安裝版配置教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-05-05

最新評(píng)論