沒有發現我有如下一個MySQL循環查詢:MySQL的函數執行成功,但在查詢狀態
DELIMITER $$
DROP function IF EXISTS getTestAccounts $$;
CREATE FUNCTION getTestAccounts(endTime INT) RETURNS INT
BEGIN
DECLARE x,y INT;
DECLARE c1,result varchar(255);
SET c1 = '';
SET result = '';
SET x = endTime;
SET y = 4;
sloop:LOOP
SELECT count(*) INTO c1 FROM `accounts` where `lifeEnd` <= x;
IF y > 0 THEN
SET x = x-3600;
SET y = y - 1;
SET result = CONCAT(result,c1,',');
ITERATE sloop;
ELSE
LEAVE sloop;
END IF;
END LOOP;
RETURN result;
END $$
DELIMITER ;
它成功執行。在製作
SELECT getTestAccounts(1368193391)
它表明db.getTestAccounts does not exist
交叉檢查這個我用
SHOW FUNCTION STATUS;
它列出了所創建的長回的所有功能,而不是當前的....
花了差不多一天不知道錯誤在哪裏.....誰能告訴我爲什麼它沒有在數據庫中創建...謝謝
你確定你在創建函數的地方使用數據庫嗎? – 2013-04-23 14:15:51
嗯我很確定...導致我運行檢查查詢的所有測試函數都列出了STATUS函數..... – troy 2013-04-23 14:17:30
定界符$$放在正確的行DROP函數IF EXISTS getTestAccounts $$; '? – Adder 2013-04-23 14:39:45