--creacion de una funcion
CREATE OR REPLACE FUNCTION F_INGRESO_ROTACION(TIPOROTACION CHARACTER(20))
RETURNS SMALLINT AS $$
DECLARE
RETORNO SMALLINT DEFAULT 0;
BEGIN
-- SE BUSCAR
SELECT COUNT(ID_ROTACION) INTO RETORNO
FROM ROTACION
WHERE ROT_TIPO=TIPOROTACION;
-- SE ALMACENA SI NO ESTA Y BUSCA EL ID
IF RETORNO=0 THEN
RETORNO :=NEXTVAL('SEQ_ROTACION');
INSERT INTO ROTACION
VALUES (RETORNO, TIPOROTACION);
END IF;
-- SE RETORNA EL ID RESULTANTE A LAS CONSULTAS ANTERIORES
RETURN RETORNO;
END;
$$ LANGUAGE plpgsql;
|