日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Mysql 存儲過程中使用游標循環讀取臨時表

瀏覽:28日期:2023-10-07 18:44:02
游標

游標(Cursor)是用于查看或者處理結果集中的數據的一種方法。游標提供了在結果集中一次一行或者多行前進或向后瀏覽數據的能力。

游標的使用方式

定義游標:Declare 游標名稱 CURSOR for table;(table也可以是select出來的結果集)打開游標:Open 游標名稱;從結果集獲取數據到變量:fetch 游標名稱 into field1,field2;執行語句:執行需要處理數據的語句關閉游標:Close 游標名稱;

BEGIN # 聲明自定義變量 declare c_stgId int; declare c_stgName varchar(50); # 聲明游標結束變量 declare done INT DEFAULT 0; # 聲明游標 cr 以及游標讀取到結果集最后的處理方式 declare cr cursor for select Name,StgId from StgSummary limit 3; declare continue handler for not found set done = 1; # 打開游標 open cr; # 循環 readLoop:LOOP # 獲取游標中值并賦值給變量 fetch cr into c_stgName,c_stgId; # 判斷游標是否到底,若到底則退出游標 # 需要注意這個判斷 IF done = 1 THEN LEAVE readLoop; END IF; SELECT c_stgName,c_stgId; END LOOP readLoop; -- 關閉游標 close cr;END

聲明變量Declare語句注意點:

Declare語句通常用來聲明本地變量、游標、條件或者handler Declare語句只允許出現在BEGIN...END語句中而且必須出現在第一行 Declare的順序也有要求,通常是先聲明本地變量,再是游標,然后是條件和handler

自定義變量命名注意點:

自定義變量的名稱不要和游標的結果集字段名一樣。若相同會出現游標給變量賦值無效的情況。

臨時表

臨時表只在當前連接可見,當關閉連接時,Mysql會自動刪除表并釋放所有空間。因此在不同的連接中可以創建同名的臨時表,并且操作屬于本連接的臨時表。與普通創建語句的區別就是使用 TEMPORARY 關鍵字

CREATE TEMPORARY TABLE StgSummary( Name VARCHAR(50) NOT NULL, StgId INT NOT NULL DEFAULT 0);

臨時表使用限制

在同一個query語句中,只能查找一次臨時表。同樣在一個存儲過程中也不能多次查詢臨時表。但是不同的臨時表可以在一個query中使用。 不能用RENAME來重命名一個臨時表,但是可以用ALTER TABLE代替

ALTER TABLE orig_name RENAME new_name; 臨時表使用完以后需要主動Drop掉

DROP TEMPORARY TABLE IF EXISTS StgTempTable;存儲過程中使用游標循環讀取臨時表數據

BEGIN## 創建臨時表CREATE TEMPORARY TABLE if not exists StgSummary( Name VARCHAR(50) NOT NULL, StgId INT NOT NULL DEFAULT 0);TRUNCATE TABLE StgSummary;## 新增臨時表數據INSERT INTO StgSummary(Name,StgId)select ’臨時數據’,1BEGIN# 自定義變量declare c_stgId int;declare c_stgName varchar(50);declare done INT DEFAULT 0;declare cr cursor for select Name,StgId from StgSummary ORDER BY StgId desc LIMIT 3;declare continue handler for not found set done = 1;-- 打開游標open cr;testLoop:LOOP-- 獲取結果fetch cr into c_stgName,c_stgId;IF done = 1 THENLEAVE testLoop; END IF; SELECT c_stgName,c_stgId;END LOOP testLoop;-- 關閉游標close cr;End;DROP TEMPORARY TABLE IF EXISTS StgSummary;End;

最開始的時候,先創建臨時表,再定義游標。但是存儲過程無論如何都保存不了。直接報錯You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ’DECLARE ...根本原因就是上面提到的注意點(Declare語句只允許出現在BEGIN...END語句中而且必須出現在第一行)。所以最后只能多個加一對BEGIN...END進行隔開。

總結

以前寫SQL Server的存儲過程,沒有仔細注意過這個問題,定義變量一般都在程序中部,MySQL就想當然的隨便寫,最后終于踩坑了。這兩個語法上差別不大,但是真遇到差別還是挺突然的。不過也好久沒有寫SQL語句,有點生疏了啊。還是趕緊把坑給記下來,加深下印象吧。

以上就是Mysql 存儲過程中使用游標循環讀取臨時表的詳細內容,更多關于MySQL 游標循環讀取臨時表的資料請關注好吧啦網其它相關文章!

標簽: MySQL 數據庫
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产精品v一区二区三区| 91精品xxx在线观看| 日韩不卡在线| 捆绑调教日本一区二区三区| 成人亚洲一区| 亚洲精品99| 亚洲视频综合| 日韩av资源网| 国产精品mm| 麻豆中文一区二区| 亚洲午夜久久| 亚洲天堂免费电影| 日本成人在线网站| 欧美成人精品一级| 国产视频一区在线观看一区免费| 欧美美女一区| 国产乱码精品一区二区三区四区 | 亚洲在线国产日韩欧美| 免费观看久久久4p| 美女av在线免费看| 欧美日韩一二| 国产高清视频一区二区| 久久国产精品99国产| 国模大尺度视频一区二区| 久久精品99国产精品日本| 日韩精品不卡一区二区| 在线观看一区| 1024精品一区二区三区| 亚洲综合丁香| 国产盗摄——sm在线视频| 日韩av一区二| 日本精品黄色| 国产欧美在线观看免费| 天堂av在线| 亚州欧美在线| 国产精久久一区二区| 国产日韩专区| 久久精品av| 国产免费播放一区二区| 人在线成免费视频| 国产欧美日韩一区二区三区四区| 久久高清免费| 综合一区在线| 人在线成免费视频| 久久精品99久久久| 三级在线观看一区二区| 日本黄色精品| 麻豆精品国产91久久久久久| 蜜桃视频免费观看一区| av亚洲在线观看| 亚洲激情久久| 国产精品婷婷| 一本大道色婷婷在线| 国产一区精品福利| 欧美一区网站| 日韩深夜视频| 国产一区二区三区四区五区| 欧美午夜三级| 欧美一级一区| 亚州欧美在线| 综合亚洲视频| 在线观看亚洲精品福利片| 精品1区2区3区4区| 欧美天堂视频| 福利视频一区| 一区二区精品伦理...| 久久久久免费av| 激情五月综合网| 婷婷综合在线| 欧美特黄视频| 国产精品美女久久久久久不卡| 亚洲精品在线国产| 亚洲三级精品| 日韩精品1区2区3区| 国产综合欧美| 五月精品视频| 国产亚洲精品v| 老司机精品久久| 亚洲永久精品唐人导航网址| 日韩在线一区二区| 在线一区免费| 视频在线观看国产精品| 久久国产精品久久w女人spa| 久久电影一区| 日本不卡一区二区| 亚洲一区不卡| 亚洲精品少妇| 日韩欧美中文在线观看| 欧美亚洲三级| 久久成人高清| 日韩不卡视频在线观看| 国内精品99| 热久久久久久久| 亚洲色图综合| 国产精品嫩模av在线| 成人在线视频免费| 午夜精品久久久久久久久久蜜桃| 在线视频观看日韩| 中文字幕一区二区三区日韩精品| 日韩专区视频网站| 日本欧美在线看| 欧美一区成人| 日韩精品不卡一区二区| 欧美一区免费| 中文字幕一区久| 男人天堂欧美日韩| 欧美国产极品| 久久视频国产| 日本亚州欧洲精品不卡| 成人国产精品久久| 亚洲综合二区| 91亚洲精品在看在线观看高清| 91伊人久久| 午夜精品成人av| 亚洲国内精品| 欧美日韩国产综合网| 综合激情在线| 亚洲精品在线影院| 激情综合自拍| 国产精品115| 国产色综合网| 麻豆国产精品一区二区三区| 伊人久久大香线蕉av不卡| 综合一区二区三区| 欧美成a人免费观看久久| 午夜久久av | 五月天久久网站| 欧美影院精品| 里番精品3d一二三区| 欧美日韩国产亚洲一区| 精品一区91| 久久99久久久精品欧美| 日韩在线中文| 日韩大片免费观看| 亚洲欧美日韩国产综合精品二区 | 国产一区二区精品| 日韩av中文字幕一区二区| 国产精品一区亚洲| 一本大道色婷婷在线| 久久国产精品久久久久久电车| 综合日韩av| 99riav1国产精品视频| 日本h片久久| 国产va免费精品观看精品视频| 亚洲啊v在线| 免费日本视频一区| 国产精品久久久久久久久久久久久久久| 精品视频在线观看网站| 夜鲁夜鲁夜鲁视频在线播放| 蜜臀久久99精品久久久久久9| 精品视频97| 激情综合网址| 日本成人中文字幕| 久久精品中文| 国产精品一区二区三区av麻| 久久av网址| 精品一区在线| 欧美日韩一区二区三区四区在线观看 | 国产乱人伦丫前精品视频| 中文字幕在线视频久| 国产精品91一区二区三区| 日韩福利视频网| 另类中文字幕国产精品| 日本精品久久| 欧美一区二区性| 老牛国内精品亚洲成av人片| 免播放器亚洲| 日韩久久精品网| 国产精品丝袜在线播放| 欧美一级专区| 91精品国产成人观看| 国产日韩1区| 亚洲综合另类| 亚洲国产福利| 欧美韩一区二区| 欧美日韩国产一区二区三区不卡| 国产欧美88| 美女久久一区| 精品一区毛片| 国产精品久久久免费| 日本 国产 欧美色综合| 亚洲韩日在线| 日韩影院二区| 国产精品videossex久久发布 | 亚洲激情中文在线| 日韩国产欧美一区二区| 免费一区二区三区在线视频| 亚洲欧洲美洲国产香蕉| 亚洲精品一二三区区别| 黄色欧美在线| 国产精品对白| 欧美影院视频| 日韩亚洲精品在线观看| 99国产精品99久久久久久粉嫩| 中文在线资源| 麻豆精品在线| 日韩精品视频网| 只有精品亚洲| 老色鬼久久亚洲一区二区| 精品一区二区三区视频在线播放|