2016-07-05 3 views
0

Ok, так что это мой текущий кодMysql ошибка синтаксиса с хранимой процедурой (верстак)

delimiter // 

Create procedure addFish(in_color varchar(45), in_pattern varchar(45)) 
BEGIN 
INSERT INTO ZenFish 
(`ZenColorsID`,`Pattern`, `Hatched` ) 
VALUES 
(
(select idZenColors from ZenColors where ColorName = in_color), 
in_pattern, 
CURRENT_TIMESTAMP() 
); 
END 

delimiter ; 

Он НИЧЕГО не делает, когда я нажимаю запустить в MySQL Workbench. Прежде чем добавить метки разделителя, он, по крайней мере, дал мне синтаксическую ошибку. Добавление строк разделителей похоже на то, что всем остальным в stackoverflow было сказано сделать с этой проблемой, поэтому я сделал это, и теперь ... просто ничего не происходит, когда я нажимаю run, или выбираю все, и нажимаю run или запускаю это утверждение. Денада.

+0

Что произойдет, если вы запустите его на консоли MySQL? Подключитесь к серверу вручную и запустите 'mysql' из командной строки и попробуйте выполнить эту команду. – FrankerZ

ответ

2

у вас есть небольшая проблема на вашем закрывающего тега

delimiter $$ 

Create procedure addFish(in_color varchar(45), in_pattern varchar(45)) 
BEGIN 
INSERT INTO ZenFish 
(`ZenColorsID`,`Pattern`, `Hatched` ) 
VALUES 
(
(select idZenColors from ZenColors where ColorName = in_color), 
in_pattern, 
CURRENT_TIMESTAMP() 
); 
END$$ 

delimiter ; 

попробовать это

+0

попробуйте это и дайте мне знать –

+0

Аллилуйя! Это должно быть «разделитель $$», а не «разделитель $$», но он работает сейчас, спасибо. –

+0

жаль, что опечатка обновила ответ –

Смежные вопросы