[Pgsql-ayuda] Problema con funciones

Adrian Galindo agalindo@salud.gob.mx
Wed, 18 Jun 2003 13:47:18 -0500


*This message was transferred with a trial version of CommuniGate(tm) Pro*
Estoy intentando crear una funcion quitaacentos. Intent=E9 hacerlo a la O=
racle, donde le das el nombre de la variable con cualqueir nombre y me ma=
rcaba el siguiente error:

bd=3D> CREATE FUNCTION quitaacentos (cadena) RETURNS varchar AS .... bla =
bla ....
ERROR:  Type "cadena" does not exist

Finalmente le busqu=E9 y me encontr=E9 que con cstring puedes hacer esto,=
 pero al manda llamar la funci=F3n, me dice esto:

ssa=3D> CREATE FUNCTION quitaacentos (cstring) RETURNS varchar AS
ssa-> 'select REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REP=
LACE(REPLACE(REPLACE(
ssa'> REPLACE(cstring, \'=E1\', \'a\'), \'=C1\', \'A\'),\'=E9\',\'e\'), \=
'=C9\',\'E\'), \'=CD\', \'I\'),\'=ED\',\'i\'),
ssa'> \'=D3\', \'O\'),\'=F3\',\'o\'),\'=DA\', \'U\'),\'=FA\',\'u\'),\'=F1=
\',\'n\')'
ssa-> LANGUAGE 'plpgsql';
CREATE FUNCTION
ssa=3D> select quitaacentos('=C1lg=F3 c=F3n =E1ce=F1t=F3s');
WARNING:  plpgsql: ERROR during compile of quitaacentos near line 0
ERROR:  plpgsql functions cannot take type cstring

=BFPor d=F3nde puedo darle para solucionar esto?
Cualquier ayuda ser=E1 bien recibida.

Gracias de antemano.
Saludos.
Adri=E1n.