Thread: code in docs gives me an error

code in docs gives me an error

From
"Hicham G. Elmongui"
Date:
Hi
I tried creating the function (from sec 19.3.1). But it gives me the
following error: "ERROR:  type tablename does not exist".
Any ideas of what i might be doing wrong?

CREATE FUNCTION use_many_fields(tablename) RETURNS TEXT AS '
DECLARE
    in_t ALIAS FOR $1;
BEGIN
    RETURN in_t.f1 || in_t.f3 || in_t.f5 || in_t.f7;
END;
' LANGUAGE 'plpgsql';




Thanks,
--Hicham




Re: code in docs gives me an error

From
Devrim GUNDUZ
Date:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1


Hi,

On Tue, 19 Oct 2004, Hicham G. Elmongui wrote:

> I tried creating the function (from sec 19.3.1). But it gives me the
> following error: "ERROR:  type tablename does not exist".
> Any ideas of what i might be doing wrong?

You have to write the data type while defining the function parameters.
For example,

CREATE FUNCTION use_many_fields(varchar) RETURNS TEXT AS '

...and then declare it as you've done below:

> DECLARE
>    in_t ALIAS FOR $1;

Regards,
- --
Devrim GUNDUZ
devrim~gunduz.org                devrim.gunduz~linux.org.tr
             http://www.tdmsoft.com
             http://www.gunduz.org
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQFBdTIVtl86P3SPfQ4RAj5vAKC2ugU2wcXHDgMMybyMqm14L4+9UwCfUd7m
7WQxt0yl0PHuezSucptNLtE=
=Z94K
-----END PGP SIGNATURE-----

Re: code in docs gives me an error

From
Tom Lane
Date:
"Hicham G. Elmongui" <elmongui@cs.purdue.edu> writes:
> I tried creating the function (from sec 19.3.1). But it gives me the
> following error: "ERROR:  type tablename does not exist".
> Any ideas of what i might be doing wrong?

> CREATE FUNCTION use_many_fields(tablename) RETURNS TEXT AS '

The example assumes you already created a table or composite type named
tablename.

            regards, tom lane