Update a composite nested type variable

Поиск
Список
Период
Сортировка
От Luca Vernini
Тема Update a composite nested type variable
Дата
Msg-id CAHZ=uVA9jV32M2NYhthHssS-Ra-ttYAkfL+OmH5D3b07gCivHg@mail.gmail.com
обсуждение исходный текст
Ответы Re: Update a composite nested type variable  (David Johnston <polobo@yahoo.com>)
Список pgsql-sql
I'm writing a system with havy use of composite types.
I have a doubt.

I'm writing all in functions with language plpgsql.
When I read a field from a composite type I must write something like this:
status = ((in_customer.customer_data).customer_status).status_id

And this works fine. I need to enclose the base type, but this is not a problem.

When I need to assign a value I try to write something like:
(in_customer.customer_data).field_a := NULL;

But postgresql rise an error:
ERROR: syntax error at or near "("
SQL state: 42601

If I dont use parentesis I rise a different error:

ERROR: "in_customer.customer_data.field_a" is not a known variable
SQL state: 42601

2 questions:
Why is the behavior so different in read and in assign.
How can I workaround this and update my values?

Luca.

В списке pgsql-sql по дате отправления:

Предыдущее
От: Andreas
Дата:
Сообщение: monthly statistics
Следующее
От: David Johnston
Дата:
Сообщение: Re: Update a composite nested type variable