On 8/16/23 14:16, Rob Sargent wrote:
I have just had a quick look at rules and I am not sure how it can be done. Rules still use the concept of NEW and OLD. If my original row has 'myfield' set to 'me' then I don't think I can tell the difference between:
Update mytable set afield='something'
and
Update mytable set afield='something',myfield='me'
Within the rule I think NEW.myfield will be set to 'me' in both cases. Please can you explain how I can tell the difference between the two update statements
If the original value in the user column is "me", what is the difference between "set other_column = some_value, user = 'me'" and "set other_column = some_value" at the business level?
Affirmation that the user updating the record explicitly set the user value.
--
Adrian Klaver
adrian.klaver@xxxxxxxxxxx
Agreed. But at the end of the day, the difference is what exactly? Wouldn't auditing (short of sql logging) say “no change” with respect to “me” column?
That is above my pay grade, that is for the OP to elaborate on. I was
just saying that the Postgres server could not make that distinction
with the information provided.
--
Adrian Klaver
adrian.klaver@xxxxxxxxxxx