2010-04-14 11 views
-1

Je migration de T-SQL à la syntaxe MySql et ne sais pas comment cette erreur sur la syntaxe donnée par Workbench 5.1.18:Erreur de syntaxe avec MySql Workbench et IF Déclaration

-- -------------------------------------------------------------------------------- 
-- 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// 

Il dit Erreur de syntaxe près de END (dernière ligne) ty à l'avance.

Répondre

-1

figured it out ... La syntaxe correcte est:

ELSEIF 

au lieu de

ELSE IF