这个存储过程有什么问题?

时间:2011-07-03 02:42:13

标签: mysql stored-procedures

我不断收到以下MySQL SP的错误 任何想法?

  

CREATE PROCEDURE productpricing(
  OUT pl DECIMAL(8,2),OUT ph   DECIMAL(8,2),OUT pa DECIMAL(8,2))   BEGIN SELECT Min(金额)INTO pl   来自卡错误代码: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;

2 个答案:

答案 0 :(得分:2)

您是否定义了分隔符?

尝试在delimiter //声明之前添加CREATE PROCEDURE。同时将END;替换为END;//。我查了一下,它对我有用。

请参阅the MySQL doc on stored procedures

答案 1 :(得分:0)

如果你使用min,我需要分组,我想。如果这不起作用,请尝试#p1创建临时表。问题可能是你要插入的表格。