Hola a todos:

 

Tengo un procedimiento que entre otras cosas debe renombrar una tabla
agregando al final del nombre de la  tabla la fecha del sistema,

 

CREATE OR REPLACE FUNCTION respalda_msj()

RETURNS void AS $$

 

declare dia integer;

declare fecha  varchar;

 

BEGIN

 

SELECT current_date into fecha;

select trim(to_char(current_date,'d')) into dia;

 

CASE dia

     WHEN 1 THEN

          --RENOMBRAR TABLA

 

          ALTER TABLE public.my_tabla

            RENAME TO public."my_tabla_" || fecha;

 

          --BORRAR TABLA

            

          DELETE FROM 

            public.my_tabla ;

 

          --VACUM Y REINDEX DE LA TABLA

 

          VACUUM (ANALYZE) public.my_tabla;

          REINDEX TABLE public.my_tabla;

 

     WHEN 2 THEN

        RAISE NOTICE '2';

 

END CASE;

RETURN;

END;

$$ LANGUAGE plpgsql;

 

 

Pero el renombrado de la tabla no me funciona al colocar la fecha que se
obtiene.

 

Alguien me puede dar una pista.

 

Saludos cordiales

 

Mario Soto

 

 

 

 

Responder a