回复:Re: BUG #14330: can not select into `composite data types` in plpgsql

From: 自己 <zoulx1982(at)163(dot)com>
To: "Pavel Stehule" <pavel(dot)stehule(at)gmail(dot)com>
Cc: "pgsql-bugs(at)postgresql(dot)org" <pgsql-bugs(at)postgresql(dot)org>
Subject: 回复:Re: BUG #14330: can not select into `composite data types` in plpgsql
Date: 2016-09-21 08:08:16
Message-ID: 42e20ab1.c341.1574bc9c25b.Coremail.zoulx1982@163.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

> It is not bug - although I understand so this behave is not unfriendly. The pattern composite var := composite value is not supported due possible ambiguous
> assignment internally in PLpgSQL implementation.

Thank you for your reply.
It seems work well for the pattern "composite var := composite value" in plpgsql body, but not in declare sestion(default value).
Besides this, i want to know if i want to implement this pattern, which part is difficult?

2016-09-21 15:12:33,"Pavel Stehule" <pavel(dot)stehule(at)gmail(dot)com>
Hi

2016-09-21 5:51 GMT+02:00 <zoulx1982(at)163(dot)com>:

The following bug has been logged on the website:

Bug reference: 14330
Logged by: lx zou
Email address: zoulx1982(at)163(dot)com
PostgreSQL version: 9.5.1
Operating system: win7 6.1.7601
Description:

Hi,
when i use composite type in plpgsql, i found it does't work when i
select a composite type column into a composite type variable.
But it can work well when i use another style like this:
select (y).a,(y).b into tmp from t....
following is a full example. Thanks.

create type mytype(a int, b text);
create table mytab(x int, y mytype);
insert into mytab values(1, (1, 'abcd'));
do $$
declare
tmp mytype;
begin
--ERROR: invalid input syntax for integer: "(1,asddd)"
--CONTEXT: PL/pgSQL function inline_code_block line 6 at SQL statement
select y into strict tmp from mytab;
raise notice '%,%', (tmp).a, (tmp).b;
end;
$$;

It is not bug - although I understand so this behave is not unfriendly. The pattern composite var := composite value is not supported due possible ambiguous assignment internally in PLpgSQL implementation.

Regards

Pavel Stehule

It is no

--
Sent via pgsql-bugs mailing list (pgsql-bugs(at)postgresql(dot)org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Marco Nenciarini 2016-09-21 09:42:27 Re: BUG #14326: Unexpected status after crash during exclusive backup
Previous Message Heikki Linnakangas 2016-09-21 08:06:33 Re: BUG #14329: libpq doesn't send complete client certificate chain on first SSL connection