成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

你知道MySQL中的游標嗎?

數據庫 MySQL
游標(cursor)是一個存儲在MySQL服務器上的數據庫查詢, 它不是一條SELECT語句,而是被該語句檢索出來的結果集。在存儲了游 標之后,應用程序可以根據需要滾動或瀏覽其中的數據。

什么是游標?

游標(cursor)是一個存儲在MySQL服務器上的數據庫查詢, 它不是一條SELECT語句,而是被該語句檢索出來的結果集。在存儲了游 標之后,應用程序可以根據需要滾動或瀏覽其中的數據。

注意:MySQL游標只能用于 存儲過程(和函數)。

創建游標

在創建一個游標前,我們需要先清除游標的語法。

1.定義游標

DECLARE 游標名稱 CURSOR FOR SQL語句;

2.打開游標

OPEN 游標名稱;

3.獲取結果

FETCH 游標名稱 INTO 變量名稱[,變量名稱];

4.關閉游標

CLOSE 游標名稱;

我們以Customers表來作為示例:

圖片

示例一 :

定義一個存儲過程,調用的時候執行里面的游標。

CREATE PROCEDURE PROC1()
BEGIN
-- 定義兩個存放結果的變量
DECLARE NAME VARCHAR(20);
DECLARE ADDR VARCHAR(50);
-- 聲明游標
DECLARE MY CURSOR FOR SELECT 姓名,地址 FROM customers;
-- 打開游標
OPEN MY;
-- 獲取結果
FETCH MY INTO NAME,ADDR;
-- 這里是為了顯示獲取結果
SELECT NAME,ADDR;
-- 關閉游標
CLOSE MY;
END;

我們執行完上面的存儲過程后,就可以調用該存儲過程了。

CALL PROC1();

得到結果:

圖片

這里肯定有小伙伴好奇,customers表里明明有7條記錄,為什么只顯示了1條記錄?這是因為游標的變量只保留了customers表中的第一行數據,如果要查看后面的數據,就需要循環往下移動游標,才能繼續查看。

示例二:

定義一個存儲過程,調用存儲過程時,將表customers里的數據循環寫入新的表里面。

CREATE PROCEDURE PROC2()
BEGIN
-- 定義兩個存放結果的變量
DECLARE FLAG INT DEFAULT 0;
DECLARE NAME VARCHAR(20);
DECLARE ADDR VARCHAR(50);
-- 聲明游標
DECLARE MY CURSOR FOR SELECT 姓名,地址 FROM customers;

DECLARE CONTINUE HANDLER FOR NOT FOUND SET FLAG=1;
-- 打開游標
OPEN MY;
-- 循環體部分
L1:LOOP
-- 獲取結果
FETCH MY INTO NAME,ADDR;
IF FLAG=1 THEN
LEAVE L1;
END IF;
-- 這里是為了顯示獲取結果
INSERT INTO cus VALUES(NAME,ADDR);
-- 關閉游標
END LOOP; -- 結束循環
CLOSE MY;
END;

然后我們執行這個存儲過程,并查詢cus表里的數據

CALL PROC2();
SELECT * FROM cus;

結果:

圖片

結果與customers里的一致,但是這些結果是循環一條一條往下移動的過程中插入的,即這個循環執行了7次。

以上就是游標的基本操作原理了,此外游標的循環體還有WHILE,REPEAT等操作方式,他們的操作方式與LOOP類似,都是用來循環執行循環體里面的內容,直到循環結束。

責任編輯:武曉燕 來源: SQL數據庫開發
相關推薦

2022-09-22 14:55:31

前端JavaScripthis

2022-09-26 13:10:17

JavaScriptthis

2024-06-03 14:27:08

ThisAPIThat

2020-04-14 16:26:22

MySQL線程同步

2019-01-07 13:01:08

Linux驚嘆用法命令

2021-11-17 08:11:35

MySQL

2023-01-31 09:02:24

JSVMVR

2024-01-08 08:45:07

Spring容器Bean

2022-06-01 07:10:43

遞歸字典極限

2010-11-23 10:21:53

跳槽

2023-11-26 18:35:25

Python編程語言

2022-04-26 09:01:45

運算符TypeScript代碼

2021-10-08 21:00:52

數據弱引用對象

2019-06-03 10:14:07

API網關微服務

2023-12-08 14:13:00

MemrayPython內存

2024-03-08 13:33:08

PG數據安全

2020-03-23 08:15:43

JavaScriptError對象函數

2022-11-10 09:00:41

2018-08-07 09:29:35

數據庫MySQL優化方法

2018-01-10 08:27:00

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产在线小视频 | 91麻豆精品国产91久久久更新资源速度超快 | 激情久久av一区av二区av三区 | 亚洲美女天堂网 | 中文字幕一区二区三区不卡 | 久久久久久久国产 | 日韩久久久久久 | 久久国内精品 | 精品国产aⅴ | 一起操网站 | 欧美视频成人 | 很很干很很日 | 国产一区三区在线 | 毛片一区二区三区 | 亚洲一区 | 91社区在线观看 | 视频一区二区三区四区五区 | 91就要激情 | 成人免费毛片在线观看 | 特一级黄色毛片 | 日韩羞羞 | 国产视频中文字幕 | 国产高清在线精品 | 久久久精品 | 成人av在线播放 | 欧美精品一区二区三区在线播放 | 亚洲欧美精品在线 | 日本精品一区二区三区在线观看视频 | 国产欧美一区二区三区久久手机版 | 日韩欧美三级在线 | 一级黄片一级毛片 | 精品国产一区二区三区日日嗨 | 国产精品波多野结衣 | 一本综合久久 | 国产成人精品综合 | 成人黄色三级毛片 | 国产精品中文字幕一区二区三区 | 蜜臀av日日欢夜夜爽一区 | 日韩一区二区三区av | 视频一区在线 | 亚洲高清在线观看 |