mysql 语法错误

发布于 2024-07-29 05:48:18 字数 589 浏览 6 评论 0原文

我正在尝试在 MYSQL 中创建一个存储过程。 下面是我的代码 给出语法错误。 谁能帮帮我吗。

CREATE PROCEDURE productpricing (    
   OUT pl DECIMAL(8,2),    
   OUT ph DECIMAL(8,2),    
   OUT pa DECIMAL(8,2)    
)

BEGIN

   SELECT Min(prod_price) INTO pl    
   FROM products;

   SELECT Max(prod_price) INTO ph
   FROM products;

   SELECT Avg(prod_price) INTO pa
   FROM products;

END;

...错误是:

您的 SQL 语法有错误; 检查与您的 MySQL 服务器版本相对应的手册,了解在“PROCEDURE Productpricing(”附近使用的正确语法 输出 pl 小数(8,2), 输出 pH 十进制(8,2), ' 在第 1 行

I am trying to create a stored procedure in MYSQL. Below is my code which is
giving syntax error. Can anyone please help me.

CREATE PROCEDURE productpricing (    
   OUT pl DECIMAL(8,2),    
   OUT ph DECIMAL(8,2),    
   OUT pa DECIMAL(8,2)    
)

BEGIN

   SELECT Min(prod_price) INTO pl    
   FROM products;

   SELECT Max(prod_price) INTO ph
   FROM products;

   SELECT Avg(prod_price) INTO pa
   FROM products;

END;

...and the error is:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'PROCEDURE productpricing(
OUT pl DECIMAL(8,2),
OUT ph DECIMAL(8,2),
' at line 1

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

森林散布 2024-08-05 05:48:18

尝试更改 MySQL 分隔符,该分隔符可以在过程定义完成之前由客户端(命令行或其他方式)解释。

尝试这个:

DELIMITER //
CREATE PROCEDURE productpricing (    
   OUT pl DECIMAL(8,2),    
   OUT ph DECIMAL(8,2),    
   OUT pa DECIMAL(8,2)    
)

BEGIN    
   SELECT Min(prod_price)    
   INTO pl    
   FROM products;

   SELECT Max(prod_price)    
   INTO ph    
   FROM products;

   SELECT Avg(prod_price)    
   INTO pa    
   FROM products;    
END//

DELIMITER ;

Try changing the MySQL delimiter, which can be interpreted by the client (command line or otherwise) before the procedure definition can be finished.

Try this:

DELIMITER //
CREATE PROCEDURE productpricing (    
   OUT pl DECIMAL(8,2),    
   OUT ph DECIMAL(8,2),    
   OUT pa DECIMAL(8,2)    
)

BEGIN    
   SELECT Min(prod_price)    
   INTO pl    
   FROM products;

   SELECT Max(prod_price)    
   INTO ph    
   FROM products;

   SELECT Avg(prod_price)    
   INTO pa    
   FROM products;    
END//

DELIMITER ;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文