Hola Lista:
Tengo la siguiente función:
CREATE OR REPLACE FUNCTION public.vacuum_respalda_msj (
integer
)
RETURNS void AS
$body$
declare diaAnterior varchar;
declare funcion text := '';
BEGIN
select to_char(current_date - $1,'YYYYMMDD') into
diaAnterior;
funcion:= 'VACUUM (ANALYZE) mensaje_ms_' || diaAnterior || '
;';
EXECUTE FUNCION;
RETURN;
END;
$body$
LANGUAGE 'plpgsql'
VOLATILE
RETURNS NULL ON NULL INPUT
SECURITY INVOKER
COST 100;
La ejecuto de la siguiente forma:
select * from vacuum_respalda_msj(2);
y me da el siguiente error:
-- Executing query:
select * from vacuum_respalda_msj(2);
ERROR: VACUUM cannot be executed from a function or multi-command string
CONTEXT: SQL statement "VACUUM (ANALYZE) mensaje_ms_20130425 ;"
PL/pgSQL function "vacuum_respalda_msj" line 9 at EXECUTE statement
********** Error **********
ERROR: VACUUM cannot be executed from a function or multi-command string
SQL state: 25001
Context: SQL statement "VACUUM (ANALYZE) mensaje_ms_20130425 ;"
PL/pgSQL function "vacuum_respalda_msj" line 9 at EXECUTE statement
he tratado de corregirla , pero me sigue dando el mismo error. Alguien me
podría dar una mano
Saludos