婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Mysql 存儲過程中使用游標循環讀取臨時表

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

熱門標簽:地圖標注被騙三百怎么辦 北京人工外呼系統價錢 常州電銷外呼系統一般多少錢 福州呼叫中心外呼系統哪家好 沃克斯電梯外呼線路圖 天智外呼系統 房產智能外呼系統品牌 云南語音外呼系統平臺 400電話鄭州申請

游標

游標(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
);

臨時表使用限制

  1. 在同一個query語句中,只能查找一次臨時表。同樣在一個存儲過程中也不能多次查詢臨時表。但是不同的臨時表可以在一個query中使用。
  2. 不能用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 '臨時數據',1

BEGIN

# 自定義變量
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 THEN
		LEAVE 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存儲過程的創建、調用與管理詳解
  • MySQL存儲過程的查詢命令介紹
  • MySQL存儲過程in、out和inout參數示例和總結
  • MySQL修改存儲過程的詳細步驟
  • Mysql修改存儲過程相關權限問題
  • MySQL存儲過程的深入講解(in、out、inout)
  • MySQL之存儲過程按月創建表的方法步驟
  • 淺談MySql 視圖、觸發器以及存儲過程
  • mysql存儲過程之if語句用法實例詳解
  • MySQL 存儲過程的優缺點分析

標簽:沈陽 珠海 移動 黔東 沈陽 拉薩 徐州 鹽城

巨人網絡通訊聲明:本文標題《Mysql 存儲過程中使用游標循環讀取臨時表》,本文關鍵詞  Mysql,存儲,過程中,使用,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Mysql 存儲過程中使用游標循環讀取臨時表》相關的同類信息!
  • 本頁收集關于Mysql 存儲過程中使用游標循環讀取臨時表的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    欧美午夜影院一区| 国产日韩av一区二区| 国产亚洲1区2区3区| 日韩激情一区二区| 日韩欧美一区二区久久婷婷| 看电视剧不卡顿的网站| 久久久久国产精品麻豆| 国产成人精品免费| 亚洲欧美日韩电影| 欧美性淫爽ww久久久久无| 日韩精品一二区| 国产日本欧洲亚洲| 91黄色免费看| 国产一区二区三区免费| 亚洲精品自拍动漫在线| 欧美丰满一区二区免费视频| 精品一区二区三区在线观看 | 欧美日韩国产一区| 日韩国产在线一| 久久精品视频一区二区| 日本高清不卡在线观看| 日韩高清欧美激情| 国产婷婷色一区二区三区在线| 91色乱码一区二区三区| 天天色综合成人网| 国产精品人妖ts系列视频| 欧洲精品一区二区| 国产精品18久久久久久久网站| 亚洲毛片av在线| 国产欧美日本一区二区三区| 欧美日韩不卡一区二区| 成人免费视频免费观看| 日本少妇一区二区| 亚洲精品乱码久久久久久黑人| 欧美大片国产精品| 91成人免费在线视频| 国产电影一区在线| 日本麻豆一区二区三区视频| 国产欧美精品区一区二区三区 | 蜜桃精品视频在线| 亚洲综合小说图片| 国产精品午夜在线| 欧美一区二区福利在线| 色综合久久综合网97色综合| 精品无码三级在线观看视频| 三级一区在线视频先锋 | 高清成人免费视频| 免费成人在线视频观看| 一区二区三区日本| 亚洲日本一区二区| 国产精品网站在线观看| 国产亚洲美州欧州综合国| 日韩三级中文字幕| 欧美精品久久久久久久多人混战 | 国产剧情一区二区| 秋霞电影网一区二区| 亚洲国产日产av| 亚洲一二三四在线| 亚洲chinese男男1069| 夜夜精品视频一区二区| 亚洲黄色小说网站| 亚洲自拍欧美精品| 亚洲曰韩产成在线| 天堂va蜜桃一区二区三区| 亚洲一区二区精品3399| 午夜欧美在线一二页| 婷婷成人激情在线网| 青娱乐精品视频| 久久99精品国产91久久来源| 国产一区在线观看麻豆| 成人免费毛片片v| 91小视频在线免费看| 欧美最新大片在线看| 欧美区一区二区三区| 日韩欧美国产wwwww| 久久精品无码一区二区三区| 国产精品丝袜黑色高跟| 亚洲永久精品国产| 久久国产精品免费| 国内精品国产三级国产a久久| 国内精品免费在线观看| 丁香五精品蜜臀久久久久99网站| 成人app下载| 欧美日韩不卡在线| 国产欧美日韩在线| 亚洲国产成人av网| 国产一区二区三区电影在线观看| 国产成人av一区二区| 99精品视频在线播放观看| 欧美日韩成人综合在线一区二区| 欧美v国产在线一区二区三区| 日本一区二区综合亚洲| 亚洲一级在线观看| 高清视频一区二区| 欧美人狂配大交3d怪物一区| 精品毛片乱码1区2区3区| 久久久久久久久久美女| 亚洲六月丁香色婷婷综合久久| 午夜精品久久久久久久| 激情另类小说区图片区视频区| 91婷婷韩国欧美一区二区| 色综合中文字幕| 精品不卡在线视频| 亚洲精品午夜久久久| 蜜桃av一区二区| 色综合视频一区二区三区高清| 91精品国产日韩91久久久久久| 亚洲国产精品av| 免费观看30秒视频久久| 91色porny在线视频| 久久美女高清视频| 另类小说一区二区三区| 在线观看一区二区视频| 欧美国产一区二区| 久久综合综合久久综合| 色婷婷亚洲一区二区三区| 日韩欧美国产高清| 久久久www免费人成精品| 视频在线在亚洲| 91色.com| 国产精品理论在线观看| 狠狠色丁香婷婷综合| 欧美日韩五月天| 亚洲精品大片www| 99精品在线免费| 国产欧美一区二区精品性色| 日本亚洲免费观看| 欧美日韩大陆一区二区| 亚洲激情综合网| av在线播放成人| 国产日产欧美一区二区三区| 国内精品自线一区二区三区视频| 欧美伦理影视网| 日韩精品久久久久久| 欧美四级电影网| 亚洲国产成人va在线观看天堂| 日本大香伊一区二区三区| 中文字幕欧美一| heyzo一本久久综合| 国产女人18水真多18精品一级做| 极品少妇xxxx精品少妇| 欧美日韩免费视频| 免费高清在线视频一区·| 日韩女优av电影在线观看| 亚洲一二三区在线观看| 91日韩一区二区三区| 综合电影一区二区三区 | 波多野结衣在线aⅴ中文字幕不卡| 国产老妇另类xxxxx| 精品成人一区二区三区四区| 国产成人免费av在线| 国产精品美女久久久久久久久| 国产91精品在线观看| 亚洲欧美国产77777| 精品视频资源站| 国产综合成人久久大片91| 亚洲图片你懂的| 日韩一区二区三区免费看 | 免费成人你懂的| 久久久久久99久久久精品网站| 夫妻av一区二区| 亚洲精品免费看| 日韩天堂在线观看| 不卡的电视剧免费网站有什么| 一区二区三区四区在线播放| 欧美精品第1页| 国产91丝袜在线18| 亚洲va天堂va国产va久| 精品国产成人系列| 色8久久人人97超碰香蕉987| 奇米影视在线99精品| 国产精品网站在线观看| 欧美日本一道本在线视频| 国产一区高清在线| 亚洲福利一区二区三区| 久久精品人人爽人人爽| 欧美婷婷六月丁香综合色| 国产精品91xxx| 午夜精品久久久久久久久| 国产天堂亚洲国产碰碰| 欧美日韩一区久久| 91亚洲精品一区二区乱码| 久久国产精品免费| 亚洲成国产人片在线观看| 中文字幕视频一区| 久久奇米777| 91精品国产综合久久精品图片| 成人动漫一区二区| 黄色资源网久久资源365| 亚洲一区二区免费视频| 欧美国产日韩精品免费观看| 91精品国产aⅴ一区二区| 在线视频亚洲一区| 色天天综合色天天久久| 成人国产精品免费网站| 毛片一区二区三区| 亚洲国产精品自拍| 亚洲精品视频在线| 一区免费观看视频| 日韩一区日韩二区|