Question

CREATE PROCEDURE 
  myProcedure( id INT )
BEGIN  
SELECT * FROM `board`;
END 

//check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 4

Was it helpful?

Solution

There are two ways:

Way 1:

When there is only one executable statement in the procedure body, using BEGIN - END is optional. And when used, you have to use custom DELIMITER.

CREATE PROCEDURE myProcedure( id INT )
  SELECT * FROM `board`;

Way 2:

Define custom DELIMITER, define procedure, and then reset the delimiter.

DELIMITER //

DROP PROCEDURE IF EXISTS myProcedure //

CREATE PROCEDURE myProcedure( id INT )
BEGIN
  SELECT * FROM `board`;
END;
//

DELIMITER ;

OTHER TIPS

use delimeter

delimiter //
CREATE PROCEDURE 
  myProcedure( id INT )
BEGIN  
SELECT * FROM `board`;
END //

Check if this solves the error

Delimiter //

CREATE PROCEDURE 
    myProcedure( id INT )
BEGIN  
SELECT * FROM board;
END 
//
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top