Re: my pgsql error?

From: Christof Glaser <gcg(at)gl(dot)aser(dot)de>
To: Christopher Sawtell <csawtell(at)xtra(dot)co(dot)nz>, pgsql-sql(at)postgresql(dot)org
Subject: Re: my pgsql error?
Date: 2001-03-13 13:19:21
Message-ID: 01031314173500.00765@pinguin
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

On Tuesday, 13. March 2001 12:53, Christopher Sawtell wrote:
> Please could a kind soul help me with this.
> I can't find _any_ - however cryptic - docs about plpgsql.

Click here:
http://www.postgresql.org/devel-corner/docs/programmer/plpgsql.html

> create function nice_date(date) returns varchar as '
> declare
> t alias for $1;
> d text;
> m text;
> y text;
> begin

Well, use the declared variable names instead of day, month, year:
d := rtrim(to_char(\'t\'::timestamp, \'Day\'));
m := rtrim(to_char(\'t\'::timestamp, \'DD Month\'));
y := rtrim(to_char(\'t\'::timestamp, \'YYYY\' ));

Just remove the following three lines ...
> nd := d || m || y;
> end;
> return nd;

... and write instead:
return d || m || y;
> end;' language 'plpgsql';
>
> It seems to load ok, but on exection I get this message.
>
> chris=# select nice_date(date('today'));
> NOTICE: plpgsql: ERROR during compile of nice_date near line 12
> ERROR: parse error at or near "return"
>
> Please, what am I doing wrong?

There must be only one 'end;' at the, um, end of the function.

Hope that helps,

Christof
--
gl.aser . software engineering . internet service
http://gl.aser.de/ . Planckstraße 7 . D-39104 Magdeburg
Tel. +49.391.7 44 77 10 . Fax +49.391.7 44 77 13 . Mobil 0177.77 92 84 3

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message Richard Huxton 2001-03-13 13:27:57 Re: copy a record from one table to another (archive)
Previous Message juerg.rietmann 2001-03-13 12:45:47 copy a record from one table to another (archive)