From: | Lixin Zhou <lzhou(at)illumina(dot)com> |
---|---|
To: | "Zhou, Lixin" <LZhou(at)illumina(dot)com> |
Cc: | "'pgsql-general(at)postgresql(dot)org'" <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: create function question |
Date: | 2001-10-29 22:22:59 |
Message-ID: | 3BDDD6C3.8020109@illumina.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Fixed. Don't use '' for variables. Weird syntax though.
Zhou, Lixin wrote:
> The following function always returns NULL when I call it like this:
>
> select get_bundle_id('1009699', '1', '1').
>
> If I replace b, r, c with '1009699', '1', '1' inside the function body,
> it returns the correct id!
>
> I changed the first line of b_id to b_id int, and that does not make
> difference.
>
> I changed the lines with '' to something like this: '' || b || '' and no
> lucky either.
>
> I am wondering what's wrong with this fuction.
>
> Thanks.
>
> Lixin
>
> create function get_bundle_id(varchar(25), varchar(4), varchar(4))
> returns integer as'
> declare
> b_id bundle.bundle_id%type;
> b alias for $1;
> r alias for $2;
> c alias for $3;
> begin
> select into b_id bundle.bundle_id
> from block, bundle
> where block.block_id = bundle.block_id
> and bundle.bundle_row = ''r''
> and bundle.bundle_column = ''c''
> and block.block_id = (select block_id
> from block
> where populated_serial_no = ''b''
> order by _loading_time_ desc
> limit 1)
> ;
> if not found then
> raise notice ''can not compute bundle_id for % % %'', b, r, c;
> end if;
> return b_id;
> end;
> '
> language 'plpgsql';
>
>
>
>
>
From | Date | Subject | |
---|---|---|---|
Next Message | Zhou, Lixin | 2001-10-29 22:54:24 | create function question |
Previous Message | Stephan Szabo | 2001-10-29 21:56:06 | Re: Table restructuring with referential integrity |