Estoy trabajando con Mysql 5.1.28-rc en freebsd. Yo sólo he decidido utilizar procedimientos almacenados en MySQL y ha creado un procedimiento de prueba de la siguiente manera:MYSQL Procedimientos almacenados Si enunciado Problema
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;
Este procedimiento funciona bien sin instrucción IF en el mismo, pero con la sentencia if Da, 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'
¿Cómo puedo resolver este problema? ¿Dónde está el problema?
vaca sagrada, ¿cómo podría perder esa :) – systemsfault
Es casi imposible de detectar errores tipográficos en su propio código, no se preocupe. Vamos a escucharlo para la programación de pares o, si no puedes hacerlo, TAN ...: D –