繁体   English   中英

MySQL存储过程; 多陈述程序,引发错误

[英]MySQL stored procedure; multi statment procedure, throws error

UPDATE Decks 
JOIN Amount ON amount.DeckName = decks.DeckName 
SET decks.DeckTotal = Decks.DeckTotal - Decks.DeckTotal
WHERE Amount.AmountName = @aName;

UPDATE Types t1
JOIN Cards ON cards.TypeName = t1.TypeName 
JOIN Amount ON amount.CardName = Cards.CardName
SET t1.TypeTotal = t1.TypeTotal - Amount.Amount
WHERE Amount.CardName = @aName;

DELETE * 
FROM Amount 
WHERE CardName = @aName;

当我尝试使用phpMyAdmin将其放入存储过程时,上面抛出了错误。 它说第二条语句开始时我的语法有错误。

附件是错误的屏幕截图

从删除查询中删除* 。然后它将正常工作

CREATE  PROCEDURE `sp_test`()
Begin
      UPDATE Decks 
      JOIN Amount ON amount.DeckName = decks.DeckName 
      SET decks.DeckTotal = Decks.DeckTotal - Decks.DeckTotal
      WHERE Amount.AmountName =1;

      UPDATE Types t1
      JOIN Cards ON cards.TypeName = t1.TypeName 
      JOIN Amount ON amount.CardName = Cards.CardName
      SET t1.TypeTotal = t1.TypeTotal - Amount.Amount
      WHERE Amount.CardName = @aName;

      DELETE 
      FROM Amount 
      WHERE CardName = @aName;
 end

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM