Cita:
Iniciado por sand1229
Disculpen que sea tan molesta pero quisiera saber como seria el procedimiento que publico davhira pero en mysql.
gracias.

Sería exactamente como lo describo arriba. El modelo descrito es de
MySQL.
El problema central es que no es práctico (ni en MySQL ni en otro DBMS) manejar esa parametrización en un SP.
Por caso, te posteo aquí un caso de SP con parámetros y resolución de valores según el caso:
Código sql:
Ver originalCREATE PROCEDURE `VALIDARVIAJES`(
IN VPATENTE CHAR(12),
IN VFECHAINI DATE,
IN VHORAINI TIME,
OUT VIDVIAJE INT)
BEGIN
DECLARE BUSCADO INT DEFAULT 0;
DECLARE ESTADO INT DEFAULT 0;
DECLARE VFINI DATE;
DECLARE VHINI TIME;
-- Buscar si hay alguno con los datos completos
SELECT IDVIAJE, VIAJECOMPLETO, FECHAINICIO, HORAINICIO
FROM VIAJE
WHERE PATENTE=VPATENTE
AND FECHAINICIO=VFECHAINI
AND HORAINICIO=VHORAINI
INTO BUSCADO, ESTADO, VFINI, VHINI;
IF BUSCADO IS NULL THEN
CASE
WHEN ESTADO=1 THEN
SELECT * FROM VIAJE WHERE IDVIAJE = BUSCADO;
WHEN ESTADO=2 THEN
DELETE FROM VIAJE WHERE IDVIAJE = BUSCADO;
WHEN ESTADO=3 THEN
UPDATE VIAJE SET VIALECOMPLETO=1 WHERE IDVIAJE = BUSCADO;
WHEN ESTADO=4 THEN
SET VIDVIAJE=-1;
ELSE
SET VIDVIAJE=0;
END CASE;
ELSE
SET VIDVIAJE=0;
END IF;
END
Algo así sería en teoría generar un case par aun SP parametrizado.