| From: | Rusel Fichi <rdfs(dot)ing(at)gmail(dot)com> | 
|---|---|
| To: | pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org> | 
| Subject: | Problemas al usar perform en funcion | 
| Date: | 2014-01-08 21:30:36 | 
| Message-ID: | CAMiTfwLdrjYjRiO_qr1sjf-OPHBQ6REMTHYe9VSp0SJBpDKbhQ@mail.gmail.com | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-es-ayuda | 
Buenos tardes Estimados,
Tengo un problema al ejecutar "perform" para llamar una funcion dentro de
otra, stee indica este error:
las funciones de disparador sólo pueden ser invocadas como disparadores
CONTEXTO:  compilación de la función PL/pgSQL «feria_insert_otra» cerca de
la línea 1;
y esta es la funcion:
create or replace function  feria_insert (dbname character varying, dbhost
character varying, dbuser character varying, dbuserpass character varying)
returns SETOF record AS $$
begin
--INSERTS DE MARCAS NUEVAS
insert into mercado.marca (id,des_marca,id_usuario,estado_ma) select
id,des_marca,id_usuario,estado_ma from
(SELECT f.*
FROM dblink('dbname=' || $1 || '  port=5432 host=' || $2 || ' user=' || $3
||' password=' || $4 ,'SELECT id,des_marca,id_usuario,estado_ma FROM
mercado.marca')
  AS f(id integer,
  des_marca text,
  id_usuario integer,
  estado_ma integer) where id not in (select id from mercado.marca)) as a;
perform feria_update();
  end;
  $$ language plpgsql;
Si saben de algo que este haciendo mal o algo que me falta por colocar se
los agradeceria.
Saludos!
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Ivan Garro | 2014-01-08 23:01:02 | Redondear enteros para arriba | 
| Previous Message | Alvaro Herrera | 2014-01-08 17:52:45 | Re: No se refleja update dentro de una funcion |