From: | "Rison, Stuart" <srison(at)rvc(dot)ac(dot)uk> |
---|---|
To: | "''pgsql-sql(at)postgresql(dot)org' '" <pgsql-sql(at)postgresql(dot)org> |
Cc: | 'Josh Berkus ' <josh(at)agliodbs(dot)com> |
Subject: | Re: Copying a rowtype variable. |
Date: | 2002-11-06 21:30:22 |
Message-ID: | 6BD8CE460CC6EE40B83DDFCED609F84B964D55@cmnt4008.rvc.ac.uk |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs pgsql-sql |
>> 2) I am looking for an elegant way of copying a rowtype variable:
>>
>> eg.
>>
>> DECLARE
>> current_row orf%ROWTYPE;
>> previous_row orf%ROWTYPE;
>> BEGIN
>>
>> LOOP
>> -- use cursors or FOR SELECT to get values into current_row
>> -- now try this:
>>
>> previous_row = current_row;
>> END LOOP;
>> END;
>>
>> Now, as I anticipated, this fails because a rowtype variable is a
>> composite
>> variable. One working alternative is to do:
>>
>
> I haven't tried this. One thing I notice above is that you're using
> the equality operator "=" instead of the assignment operator ":=" .
> Usually Postgres lets you slack on this, but it would be worth trying
> to see whether that has an effect on the problem.
>
Fair point. But "previous_row := current_row" doesn't work either.
> Another thing to try is, instead of a simple variable assignment
>
> SELECT current_row INTO previous_row;
>
> ... and see if that works.
Well, I had high hopes for that one... but it didn't work either!
> I'll tinker later today; there has to be a way to do it.
I'd definitely appreciate further suggestions, but thanks all the same for
you help. I have a feeling that you might have to write a PL function to
perform the operation... but I haven't really thought about it!
Stuart.
From | Date | Subject | |
---|---|---|---|
Next Message | Josh Berkus | 2002-11-06 22:27:16 | Cannot assign ROWTYPE, RECORD variables in PL/pgSQL |
Previous Message | Bruce Momjian | 2002-11-06 18:01:26 | Re: Error in chkpass.c (contrib area) with suggestion |
From | Date | Subject | |
---|---|---|---|
Next Message | Josh Berkus | 2002-11-06 22:27:16 | Cannot assign ROWTYPE, RECORD variables in PL/pgSQL |
Previous Message | Masaru Sugawara | 2002-11-06 17:11:42 | Re: query optimization question |