2014-12-11 27 views
6

Mam następującą procedurę przechowywania. To daje mi błądBłąd procedury przechowywanej mysql: brak średnika

DROP procedure IF exists getQueueMessage; 
DELIMITER $$ 
CREATE DEFINER=`root`@`localhost` PROCEDURE `getQueueMessage`(msg varchar(100)) 
BEGIN 

SELECT `Name` FROM queues WHERE Id IN (
SELECT PhysicalQueueId FROM indexqueuemaps WHERE ConditionFieldValue = msg) 
END 
END$$ 
DELIMITER ; 

To daje mi missing semicolon error. Nie wiem Dlaczego ten błąd się pojawia. Czy ktoś może mi pomóc?

Odpowiedz

17

Spróbuj tak:

DROP procedure IF exists getQueueMessage; 
DELIMITER $$ 
CREATE DEFINER=`root`@`localhost` PROCEDURE `getQueueMessage`(msg varchar(100)) 
BEGIN 

SELECT `Name` FROM queues WHERE Id IN (
SELECT PhysicalQueueId FROM indexqueuemaps WHERE ConditionFieldValue = msg); 
END$$ 
DELIMITER ; 
-2

Wymień root @localhost root @localhost

3

Jest tylko jeden BEGIN i dwa END s, usunąć 2nd END i powinno być w porządku.

Powiązane problemy