Copying a rowtype variable.

From: "Rison, Stuart" <srison(at)rvc(dot)ac(dot)uk>
To: "'pgsql-general(at)postgresql(dot)org'" <pgsql-general(at)postgresql(dot)org>, "'pgsql-sql(at)postgresql(dot)org'" <pgsql-sql(at)postgresql(dot)org>
Subject: Copying a rowtype variable.
Date: 2002-11-05 13:33:32
Message-ID: 6BD8CE460CC6EE40B83DDFCED609F84B964D33@cmnt4008.rvc.ac.uk
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-sql

Hello,

Just doing a bit of PL/PGSQL so my first question is:

1) should PL/PGSQL questions be posted to the general mailing list, the sql
mailing list or both?

My second question is:

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:

previous_row.pid = current_row.pid;
previous_row.start = current_row.start;
-- and so on so forth for all current_row variables

But this is inconvenient of the row has many fields and impossible if you
want a flexible function which can accomodate rowtypes for which the fields
are not known "a priori".

Any clever workarounds?

Cheers,

Stuart.

PS. I started using PGSQL five years ago... then I had to leave it alone
for a while... I can't believe how much it's grown and developed. AMAZING,
congrats to all developers.

----------------------------------------------------------------------------
--
Stuart C. G. Rison
Department of Pathology and Infectious Diseases
Royal Veterinary College
London.
United Kingdom.

"That's bioinformatics... and we don't want to be doing bioinformatics, we
want to do real science.", Sydney Brenner, UCL Pfizer Lecture, 8 May 2001
----------------------------------------------------------------------------
--

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Stephan Szabo 2002-11-05 13:37:26 Re: executing delete in a case statement?
Previous Message Richard Huxton 2002-11-05 13:17:04 Re: log file?

Browse pgsql-sql by date

  From Date Subject
Next Message Thomas Good 2002-11-05 14:00:38 Re: [GENERAL] Database Design tool
Previous Message Richard Huxton 2002-11-05 13:21:31 Re: owner of type 'mmm' apperars to be invalid