我无法使这个存储过程加载/保存,这很奇怪,因为插入一行版本的过程工作没有问题。我没有试图重载,我给了两个过程和所有变量不同的名称,工作台告诉我问题在于“flavidtwo”后面的括号。颠倒插入顺序并不能解决问题,它只是开始抱怨另一行的结尾。
CREATE PROCEDURE `LinkTwoFlavors`(in selzidtwo INT, in flavidone INT, in flavidtwo INT)
BEGIN
INSERT INTO `readinga_seltzer`.`AscSeltzerFlavor` (`SeltzerID`,`FlavorID`) VALUES (selzidtwo, flavidtwo);
INSERT INTO `readinga_seltzer`.`AscSeltzerFlavor` (`SeltzerID`,`FlavorID`) VALUES (selzidtwo, flavidone);
END
1条答案
按热度按时间vkc1a9a21#
实际上,它是在抱怨分号,而不是括号。您需要在过程之前设置一个不同的分隔符(之后再次重置它),以便mysql知道将整个过程视为一个语句,否则它认为应该在第一个insert语句之后结束。你的程序应该是这样的