简体   繁体   English

MySQL 8.0中存储过程中的错误1064

[英]Error 1064 in a stored procedure in MySQL 8.0

I am using MySQL Workbench 8.0 CE and i'm trying to create a stored procedure to show 2 fields from my table. 我正在使用MySQL Workbench 8.0 CE,并且试图创建一个存储过程来显示表中的2个字段。 I am receiving the following error: 我收到以下错误:

Error Code: 1064. 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 '' at line 3

This is my table: 这是我的桌子:

CREATE TABLE student (
 id INT PRIMARY KEY,
 name VARCHAR(200),
 age INT,
 final_grade DOUBLE,
 sex VARCHAR(1)
)

And this is the procedure: 这是过程:

CREATE PROCEDURE show_name_grade () 
 BEGIN
  SELECT name,final_grade FROM student;
END

You will need to redefine Delimiter to something else other than ; 您将需要将Delimiter重新定义为除;以外的其他名称; . At the end, define it back to ; 最后,将其定义回;

DELIMITER $$
CREATE PROCEDURE show_name_grade () 
 BEGIN
  SELECT name,final_grade FROM student;
END $$
DELIMITER ;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM