MYSQL Procédures Stockées Si l'énoncé de Problème

Je travaille avec Mysql 5.1.28-rc sur freebsd. J'ai juste décidé d'utiliser des procédures stockées dans MYSQL et créé une procédure de test comme ci-dessous:

DELIMITER $$ 
DROP PROCEDURE IF EXISTS test $$
CREATE PROCEDURE test( IN test VARCHAR(22) )
BEGIN
 DECLARE count INT(11);
 SET count = (SELECT COUNT(*) FROM Test WHERE test_column = test );
 SELECT count;
 IF count = 0 THEN
  SET count = 1;
 ELSE
  SET count = 2;
 ENDIF;
END $$
DELIMITER;

Cette procédure fonctionne bien sans instruction SI , mais avec l'instruction si elle donne,
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ';
END'

Comment puis-je résoudre ce problème? Où est le problème?

OriginalL'auteur systemsfault | 2009-07-17