mysql儲存過程宣告順序

orclwujian發表於2016-04-05
儲存過程開始生命了三個變數,這三個變數的宣告順序非常重要,首先要進行變數宣告,然後宣告條件,隨後宣告遊標,再後面才是宣告錯誤處理器,如果沒有按照順序宣告,系統會提示錯誤資訊。如下所示:
BEGIN
declare time char(8);
declare cur cursor for select date from CDM.cdm_date;
DECLARE done INT DEFAULT 0;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done=1;
TRUNCATE table ADM.adm_gtt_appre_analyse;
open cur;
read_loop:LOOP
..............
end loop;
close cur;
end;
會報錯ERROR 1337 (42000): Variable or condition declaration after cursor or handler declaration
原因是宣告遊標(declare cur cursor for select date from CDM.cdm_date;)在宣告變數前面(DECLARE done INT DEFAULT 0;

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29989552/viewspace-2075644/,如需轉載,請註明出處,否則將追究法律責任。

相關文章