[Pgsql-ayuda] Problema con funciones

Fernando Papa fpapa@claxson.com
Wed, 18 Jun 2003 19:15:46 -0300


cstring? por que no usas varchar?

--
Fernando O. Papa
DBA
=20

> -----Mensaje original-----
> De: Adrian Galindo [mailto:agalindo@liceaga.facmed.unam.mx]=20
> Enviado el: mi=E9rcoles, 18 de junio de 2003 18:56
> Para: Pgsql-ayuda@tlali.iztacala.unam.mx
> Asunto: [Pgsql-ayuda] Problema con funciones
>=20
>=20
> Estoy intentando crear una funcion quitaacentos. Intent=E9 hacerlo a =
la=20
> Oracle, donde le das el nombre de la variable con cualqueir=20
> nombre y me=20
> marcaba el siguiente error:
>=20
> bd=3D> CREATE FUNCTION quitaacentos (cadena) RETURNS varchar AS=20
> .... bla=20
> bla ....
> ERROR:  Type "cadena" does not exist
>=20
> Finalmente le busqu=E9 y me encontr=E9 que con cstring puedes hacer =
esto,=20
> pero al manda llamar la funci=F3n, me dice esto:
>=20
> ssa=3D> CREATE FUNCTION quitaacentos (cstring) RETURNS varchar AS
> ssa-> 'select
> REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLAC
> E(REPLACE(REPLACE(=20
>=20
> ssa'> REPLACE(cstring, \'=E1\', \'a\'), \'=C1\', =
\'A\'),\'=E9\',\'e\'),=20
> \'=C9\',\'E\'), \'=CD\', \'I\'),\'=ED\',\'i\'),
> ssa'> \'=D3\', \'O\'),\'=F3\',\'o\'),\'=DA\',=20
> \'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
>=20
> =BFPor d=F3nde puedo darle para solucionar esto?
> Cualquier ayuda ser=E1 bien recibida.
>=20
> Gracias de antemano.
> Saludos.
> Adri=E1n.
>=20
>=20
> _______________________________________________
> Pgsql-ayuda mailing list
> Pgsql-ayuda@tlali.iztacala.unam.mx
> http://tlali.iztacala.unam.mx/mailman/listinfo/pgsql-ayuda
>=20