मुझे लगता है कि आप अपनी पोस्ट में निम्नलिखित पंक्ति को शामिल करना भूल गए हैं:
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
आपका कोड सही है, लेकिन mysql का बग/अजीब व्यवहार चेतावनी को प्रकट होने का कारण बनता है, भले ही इसे संभाला गया हो। आप इससे बच सकते हैं यदि आप अपनी प्रक्रिया के अंत में एक "डमी" कथन जोड़ते हैं जिसमें एक तालिका शामिल होती है और सफल होती है, तो इससे चेतावनी साफ हो जाएगी। (देखें http://dev.mysql.com/doc /refman/5.5/hi/show-warnings.html ) आपके मामले में:
SELECT name INTO l_name FROM customer_tbl LIMIT 1;
लूप के अंत के बाद। MySQL 5.5.13 पर चेतावनी गायब हो जाती है, Linux और Windows पर। मैंने MySQL बग 60840 पर टिप्पणी की और मुझे आशा है कि वे इसे भविष्य में कुछ समय ठीक कर देंगे...