我有一個存儲過程,不需要返回任何值。它運行順暢,沒有任何問題。但是,它在完成運行後輸出錯誤消息:如何擺脫「錯誤1329:沒有數據 - 零行取出,選擇或處理」
Error: No data - zero rows fetched, selected, or processed
我該如何擺脫此錯誤消息?
CREATE PROCEDURE `testing_proc`()
READS SQL DATA
BEGIN
DECLARE done INT DEFAULT 0;
DECLARE l_name VARCHAR(20);
DECLARE my_cur CURSOR FOR
SELECT name FROM customer_tbl;
OPEN my_cur;
my_cur_loop:
LOOP FETCH my_cur INTO l_name;
IF done = 1 THEN
LEAVE my_cur_loop;
END IF;
INSERT INTO names_tbl VALUES(l_name);
END LOOP my_cur_loop;
CLOSE my_cur;
END
沒有細節,我會第一個說 - 它可以被替換爲'INSERT INTO names_tbl SELECT name FROM CUSTOMER_TBL' =) – 2010-08-11 22:21:41
感謝OMG小馬。在實際的代碼中「INSERT INTO names_tbl VALUES(l_name);」應該由200行代碼替換。我使用了這個簡化版本,因爲即使是這個簡化版本,我也會得到相同的錯誤。如果它幫助刪除錯誤消息,我可以輸出一個varchar作爲返回值。 – Babibo 2010-08-11 22:26:29