該函數返回NULL:SELECT ... INTO存儲過程
CREATE FUNCTION `GetCardID`(numId INT) RETURNS int(11)
DETERMINISTIC
BEGIN
DECLARE retcard INT(11);
SELECT id
INTO retcard
FROM cards
WHERE `number` = numId
AND enabled = 1
LIMIT 1;
RETURN retcard;
END
始終返回null,即使查詢:
SELECT id FROM cards WHERE `number`=<Insert Value Here> AND ENABLED = 1 LIMIT 1;
返回用於相同值的有效值和函數參數。
例如:
SELECT ID FROM cards WHERE number = 12345 AND ENABLED = 1 LIMIT 1;
- 返回的ID,而
GetCardId(12345);
- 返回null
任何想法,我在這裏失蹤?我認爲自己在SQL方面非常熟練,但在SP上略顯綠色。
只是問,你使用'delimiter $$'? – jcho360 2013-02-15 17:55:57
是的,我正在使用備用分隔符語法(我相信如果沒有它,create語句會失敗)。公平的問題,但。 – 2013-02-15 19:41:59