public inbox for [email protected]  
help / color / mirror / Atom feed
From: Ray O'Donnell <[email protected]>
To: Adrian Klaver <[email protected]>
To: pgsql-general <[email protected]>
Subject: Re: plpgsql: remove a field from a record?
Date: Sat, 27 Dec 2025 16:14:52 +0000
Message-ID: <0102019b60976195-55ebd253-f526-4655-9096-3817796b6803-000000@eu-west-1.amazonses.com> (raw)
In-Reply-To: <[email protected]>
References: <0102019b608b1887-d8e9137f-46a7-4796-9f43-0addbab3c645-000000@eu-west-1.amazonses.com>
	<[email protected]>

On 27/12/2025 16:13, Adrian Klaver wrote:

> On 12/27/25 08:01, Ray O'Donnell wrote:
>> Hi all,
>>
>> In a plpgsql function, is it possible to remove a field from a RECORD 
>> value?
>>
>> My specific use-case is that I have a row returned from a MERGE 
>> operation into a variable, declared as type RECORD, which will then 
>> be logged; and I want to remove some potentially sensitive stuff from 
>> it before it gets logged.
>>
>> I could manually redact the sensitive items (e.g. set them to null); 
>> but it'd be tidier just to remove them altogether if I can.
>
> A record 'type' supports record_name.field_name notation. Not sure how 
> many fields you want to log, but you could log only the non-sensitive 
> fields explicitly e.g. record_name.fld1, record_name.fld3, 
> record_name.fld4, etc.


Aargh - I was being silly - of course I can return only the items I want 
to log from the MERGE.

Thanks Adrian, and apologies for the noise!

Ray.





>
>>
>> Thanks in advance,
>>
>> Ray.
>>
>
>
-- 
Ray O'Donnell // Galway // Ireland
[email protected]







reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected]
  Subject: Re: plpgsql: remove a field from a record?
  In-Reply-To: <0102019b60976195-55ebd253-f526-4655-9096-3817796b6803-000000@eu-west-1.amazonses.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox