存储过程出现Mysql语法错误(工作台)

存储过程出现Mysql语法错误(工作台),mysql,mysql-workbench,Mysql,Mysql Workbench,好的,这是我当前的代码 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,

好的,这是我当前的代码

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工作台中按run时,它什么也不做。在添加分隔符标记之前,它至少给了我一个语法错误。添加分隔符行似乎是stackoverflow上的其他所有人都被告知要做的事情,所以我做了,现在。。。当我按run,或全选并按run,或运行此语句时,什么也不会发生。德纳达。

您的终端标签上有一个小问题

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 ;

试试这个

你的结束标签有点小问题

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控制台上运行会发生什么?手动连接到服务器,从命令行运行
mysql
,然后尝试执行该命令。如果在mysql控制台上运行该命令,会发生什么情况?手动连接到服务器,从命令行运行
mysql
,然后尝试执行该命令。试试这个,让我知道哈利路亚!它需要是“delimiter$$”而不是“delimiter$$”,但它现在正在工作,谢谢。试试这个,让我知道哈利路亚!它需要是“delimiter$$”而不是“delimiter$$”,但它现在正在工作,谢谢。