2011-07-03 36 views
0

我一直得到這個錯誤的下面的MySQL SP 任何想法?這個存儲過程有什麼問題?

CREATE PROCEDURE productpricing(
OUT PL DECIMAL(8,2),pH值OUT DECIMAL (8,2),OUT PA DECIMAL(8,2)) BEGIN SELECT MIN(量)INTO PL FROM Card錯誤代碼:1064您的SQL語法中有一個 錯誤;檢查對應於你的MySQL 服務器版本正確的語法 手冊「」附近 使用在第9行0.000秒

DROP PROCEDURE IF EXISTS productpricing; 
CREATE PROCEDURE productpricing(
    OUT pl DECIMAL(8,2), 
    OUT ph DECIMAL(8,2), 
    OUT pa DECIMAL(8,2) 
) 
BEGIN 
    SELECT Min(amount) 
    INTO pl 
    FROM Card; 
END; 
+0

什麼是** ph **和** pa ** for? – Flimzy

回答

2

您是否定義了分隔符?

嘗試在CREATE PROCEDURE語句前添加delimiter //。還請將END;替換爲END;//。我檢查了它,它適用於我。

請參閱the MySQL doc on stored procedures

0

需要GROUP BY如果使用最小值,最大值我想。如果這不起作用,請嘗試#p1來創建臨時表。可能是問題是你插入它的表。