国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

基于MySQL游標的具體使用詳解

2024-07-24 12:48:26
字體:
來源:轉載
供稿:網友

測試表 level ;

復制代碼 代碼如下:

create table test.level (name varchar(20));

再 insert 些數據 ;

代碼

初始化

復制代碼 代碼如下:

drop procedure if exists useCursor //

建立 存儲過程 create
復制代碼 代碼如下:

CREATE PROCEDURE useCursor()

BEGIN


局部變量的定義 declare
復制代碼 代碼如下:

declare tmpName varchar(20) default '' ; 
declare allName varchar(255) default '' ; 
declare cur1 CURSOR FOR SELECT name FROM test.level ; 

MySQL 游標 異常后 捕捉

并設置 循環使用 變量 tmpname 為 null 跳出循環。

復制代碼 代碼如下:

declare CONTINUE HANDLER FOR SQLSTATE '02000' SET tmpname = null;

開游標
復制代碼 代碼如下:

OPEN cur1;

游標向下走一步
復制代碼 代碼如下:

FETCH cur1 INTO tmpName;

循環體 這很明顯 把MySQL 游標查詢出的 name 都加起并用 ; 號隔開
復制代碼 代碼如下:

WHILE ( tmpname is not null) DO
set tmpName = CONCAT(tmpName ,";") ;
set allName = CONCAT(allName ,tmpName) ;

游標向下走一步
復制代碼 代碼如下:

FETCH cur1 INTO tmpName;

結束循環體:
復制代碼 代碼如下:

END WHILE;

關閉游標
復制代碼 代碼如下:

CLOSE cur1;

選擇數據
復制代碼 代碼如下:

select allName ;

結束存儲過程
復制代碼 代碼如下:

END;//

調用存儲過程:
復制代碼 代碼如下:

call useCursor()//

運行結果:
復制代碼 代碼如下:

mysql> call useCursor()//

+--------------------------------------+

| allName                              |

+--------------------------------------+

| f1;c3;c6;c5;c2;c4;c1;f1;f3;f4;f2;f5; |

+--------------------------------------+

1 row in set (0.00 sec)


loop循環游標:
復制代碼 代碼如下:

DELIMITER $$ 

DROP PROCEDURE IF EXITS cursor_example$$ 
CREATE PROCEDURE cursor_example() 
     READS SQL DATA 
BEGIN 
     DECLARE l_employee_id INT; 
     DECLARE l_salary NUMERIC(8,2); 
     DECLARE l_department_id INT; 
     DECLARE done INT DEFAULT 0; 
     DECLARE cur1 CURSOR FOR SELECT employee_id, salary, department_id FROM employees; 
     DECLARE CONTINUE HANDLER FOR NOT FOUND SET done=1; 
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 沧州市| 津南区| 图片| 榆树市| 志丹县| 津南区| 木兰县| 东宁县| 佛教| 江源县| 加查县| 五大连池市| 嘉黎县| 故城县| 读书| 无锡市| 西平县| 古田县| 巴马| 潮州市| 高青县| 大丰市| 临漳县| 贵州省| 菏泽市| 祁连县| 隆尧县| 含山县| 宜兰市| 盘山县| 卢氏县| 灵川县| 同仁县| 两当县| 安泽县| 沧州市| 黑河市| 南召县| 灵山县| 永登县| 邢台县|