DROP PROCEDURE `ModificarUsuario`//
CREATE DEFINER=`root`@`localhost` PROCEDURE `ModificarUsuario`(
IN `Aid` INT,
IN `Aced` VARCHAR(100),
IN `Anombre` VARCHAR(100),
IN `Acargo` VARCHAR(100),
IN `Acedula` VARCHAR(100),
IN `Ausuario` VARCHAR(100),
IN `Apass` VARCHAR(100),
OUT `res` VARCHAR(10) )
BEGIN
SELECT COUNT(usuario) INTO res FROM `usuario` WHERE `cedula`=Aced and `id`<>Aid;
IF res =0 THEN
UPDATE `usuario` SET cedula=Aced, nombre=Anombre, cargo=Acargo, usuario=Ausuario, contrasena=Apass WHERE cedula=Acedula;
END IF;
END
Wenn ich diese Prozedur verwende, erhalte ich den Fehler "erwartet 8, erhalten 7." Ich verstehe das nicht, wenn wir uns den Code ansehen, gibt es 7 Eingabeparameter und einen Ausgabeparameter. Es scheint, dass der Ausgabeparameter auch bei Aufruf der Prozedur angegeben werden muss, irgendwelche Ideen warum?