| From: | silly sad <sad(at)bankir(dot)ru> | 
|---|---|
| To: | "A(dot) Kretschmer" <andreas(dot)kretschmer(at)schollglas(dot)com> | 
| Cc: | pgsql-sql(at)postgresql(dot)org | 
| Subject: | Re: what exactly is a query structure? | 
| Date: | 2010-02-26 09:42:04 | 
| Message-ID: | 4B87976C.4020808@bankir.ru | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-sql | 
On 02/26/10 10:19, A. Kretschmer wrote:
> In response to silly sad :
>> hello.
>>
>> Postgresql 8.3.9
>>
>> CREATE TYPE usr_secrets AS (login TEXT, pass TEXT, shop_pass TEXT);
>>
>> CREATE OR REPLACE FUNCTION get_noobs () RETURNS SETOF usr_secrets AS $$
>> BEGIN
>>    RETURN QUERY SELECT login, '*' as pass, shop_pass FROM noob;
>>    RETURN;
>> END;
>> $$ LANGUAGE plpgsql SECURITY DEFINER;
>>
>> SELECT * from get_noobs();
>>
>> And we have the following error
>>
>> ERROR:  structure of query does not match function result type
>
> Wild guess: your table noob has an other structure as expected, in
> particular login and/or shop_pass are not TEXT.
they are texts.
if we substitute constant '*' with a text field or even a subselect, the 
error disappear.
| From | Date | Subject | |
|---|---|---|---|
| Next Message | silly sad | 2010-02-26 09:44:35 | Re: what exactly is a query structure? | 
| Previous Message | A. Kretschmer | 2010-02-26 07:19:01 | Re: what exactly is a query structure? |