Jag antar att du bara glömde att inkludera följande rad i ditt inlägg:
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
Din kod är korrekt, men bugg/konstigt beteende hos mysql gör att varningen visas även om den hanterades. Du kan undvika att om du lägger till en "dummy"-sats i slutet av din procedur som involverar en tabell och är framgångsrik, kommer detta att ta bort varningen. (Se http://dev.mysql.com/doc /refman/5.5/en/show-warnings.html )I ditt fall:
SELECT name INTO l_name FROM customer_tbl LIMIT 1;
efter slutet av loopen.På MySQL 5.5.13 försvinner varningen, på Linux och Windows.Jag kommenterade MySQL Bug 60840 och jag hoppas att de kommer att fixa det någon gång i framtiden...