From: | Jan Wieck <janwieck(at)yahoo(dot)com> |
---|---|
To: | Roberto Mello <rmello(at)cc(dot)usu(dot)edu> |
Cc: | pgsql-sql(at)postgresql(dot)org |
Subject: | Re: extract and variables in PL/pgSQL |
Date: | 2002-06-06 12:20:55 |
Message-ID: | 200206061220.g56CKtO26245@saturn.janwieck.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
Roberto Mello wrote:
> Hi,
>
> Someone in another list asked about this function. I'm not sure why it
> doesn't work. What am I missing?
>
> CREATE FUNCTION zastras(timestamp) RETURNS integer AS '
> declare
> w_temp1 alias for $1;
> w_result integer;
> begin
> SELECT INTO w_result EXTRACT(epoch from timestamp w_temp1);
> return w_result;
>
> end;
> ' language 'plpgsql';
>
> NOTICE: Error occurred while executing PL/pgSQL function zastras
> NOTICE: line 5 at select into variables
First you're missing the error message, which should read
something like
ERROR: parser: parse error at or near "$1"
Doesn't help much here, but it is usually a good idea to
include error messages in reports like this.
I'm not 100% sure, but it seems that the PostgreSQL main
parser doesn't support parameters in the place of this
"timestamp" expression construct.
It works if you leave out the keyword "timestamp" writing
SELECT INTO w_result EXTRACT(epoch from w_temp1);
because the variable w_temp1 is known to be of type timestamp
already and therefore the a_expr node on the right hand side
of from is valid.
Jan
--
#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me. #
#================================================== JanWieck(at)Yahoo(dot)com #
From | Date | Subject | |
---|---|---|---|
Next Message | Travis Hoyt | 2002-06-06 12:47:49 | Re: PostgreSQL on AIX |
Previous Message | Bruno Wolff III | 2002-06-06 11:48:24 | Re: how to reset serials |