From: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
---|---|
To: | Gabriel Ferro <gabrielrferro(at)yahoo(dot)com(dot)ar> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: funcion nombre y borrado |
Date: | 2009-03-18 15:05:58 |
Message-ID: | 20090318150558.GF3798@alvh.no-ip.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Gabriel Ferro escribió:
>
> Masters algo rarisimo me sucedio, resulta que al crear una funcion en un esquema desde pgadmin3 me equivoque y puse dos veces el nombre del esquema
> de la forma esquema.esquema.funcionA y me dejo crearla (rarisimo no?)
Hmm, será un bug en pgadmin?
> la cosa es que cuando la quiero borrar se me queda colgado el pgadmin3
> entonces desde una terminal hago
> drop function esquema.esquema.funcionA y me dice
> no estan implementadas las referencias entre base de datos
> y si intento
> drop function esquema.funcionA
> me dice que la funcion no existe.
> pero si consulto
> SELECT proname AS "FUNCION", proargnames AS "PARAMETROS",
> pg_catalog.oidvectortypes(proargtypes) AS "TIPO PARAMETROS"
> FROM pg_proc
> WHERE proname LIKE '%funcionA%';
>
> me aparece esquema.funcionA
Debes especificar el tipo de los argumentos (y recuerda que si el nombre
tiene mayusculas debes encerrarlo en comillas dobles)
drop function esquema."functionA"(argumento1, argumento2, ..)
Para ver la especificacion de la funcion puedes hacer esto:
select oid::regprocedure
from pg_proc
where proname like '%funcionA%';
Ahh, se me ocurre que pgAdmin creó una función en el esquema "esquema"
con el nombre "esquema.funcionA". Quizás tengas que borrarla de esta
forma:
drop funcion esquema."esquema.funcionA"(argumento1, ...)
--
Alvaro Herrera http://www.amazon.com/gp/registry/5ZYLFMCVHXC
"When the proper man does nothing (wu-wei),
his thought is felt ten thousand miles." (Lao Tse)
From | Date | Subject | |
---|---|---|---|
Next Message | Fernando Hevia | 2009-03-18 15:31:34 | RE: recuperar serials |
Previous Message | Alvaro Herrera | 2009-03-18 15:02:06 | Re: crear expresion |