Hi, 2013/11/15 0:38、Elliot <yields.falsehood@xxxxxxxxx> のメッセージ: >> On 2013-11-14 10:32, Dang Minh Huong wrote: >> Hi, >> >> 2013/11/15 0:20、Elliot <yields.falsehood@xxxxxxxxx> のメッセージ: >> >>>> On 2013-11-14 10:13, Dang Minh Huong wrote: >>>> Hi all, >>>> >>>> I am using PostgreSQL 9.1 and get a syntax error with the following PL/pgSQL clause. >>>> Is there any equivalent syntax in PL/pgSQL to solve it. >>>> >>>> ------ >>>> rec typ[]; >>>> (typ[1]).t1 := 1; >>>> ------ >>>> >>>> typ is type which was created by command below. >>>> >>>> Create type typ as( >>>> t1 interger, >>>> t2 text); >>>> >>>> I am migrating data from Oracle to PostgreSQL and encounter this issue. >>>> >>>> Thanks, >>>> Huong, >>> If typ is the type and rec is the variable, do you mean to access rec[1]? >> Sorry for this miss. >> Yes, typ is the type and rec is the variable. >> I only want to assign a value to rec[1].t1. >> >> Thanks, >> Huong, > > I can't recall a source on this but I'm not sure you can assign to > composite types' members in plpgsql I think so too. > (unlike in straight sql where update > set rec.t1 := 1 is valid). You can build the entire record at once like > "rec[1] := (1, null)::typ;". > But if do like that, the rec[1].t2 will replaced by null. Is there another way? Thanks, Huong, -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general