我正在从 T-SQL 迁移到 MySql 语法,但不知道如何克服 Workbench 5.1.18 给出的这个语法错误:
-- --------------------------------------------------------------------------------
-- Routine DDL
-- --------------------------------------------------------------------------------
DELIMITER //
CREATE PROCEDURE `SysTicket`.`GetProductionLines` (aId INT, aActive INT, aResponsible VARCHAR(8000))
BEGIN
IF(aId > 0) THEN SELECT * FROM ProductionLine WHERE Id = @Id;
ELSE IF( aActive <> -1 AND aResponsible = '|$EMPTYARG$|') THEN SELECT * FROM ProductionLine;
ELSE IF(aResponsible = '|$EMPTYARG&|') THEN SELECT * FROM ProductionLine WHERE Active = aActive;
ELSE SELECT * FROM ProductionLine WHERE Active = aActive AND Responsible LIKE CONCAT('%', aResponsible, '%');
END IF;
END//
它提前说 END(最后一行)ty 附近的语法错误。