What you suggest is a new column type, and that would be something that needs to be reviewed and implemented by the PostgreSQL developers. Since it is not a SQL standard, I doubt it has much chance of implementation. That being said, you should understand that all triggers require the need for an associated trigger function. A simpler way to accomplish "WORM" is with a RULE.
EG:
CREATE RULE table_worm AS ON UPDATE TO your_table WHERE NEW.your_column <> OLD your_column DO NOTHING.
I am wondering about useful something might be. So I hope ya'll don't mind me throwing out for feedback. I am fairly good with standard SQL, but not the more advanced DBA things such as TRIGGERs. I am reading good book, "PostgreSQL Server Programming" to increase my knowledge. The section that I'm on now is about triggers. And how to use them to enforce a "read only" column. So I'm wondering if such is very common? I can see some uses for it with things which "should not change", such as a system generated date/time in an audit log. Given how much PostgreSQL extends beyond the ANSI standard, I'm wondering if a new column modifier, perhaps "WORM" (Write Once, Read Many) might be of any real use. Or is this "need" just not prevalent enough to require such a thing?
just thinking. But maybe not productively.
--
If you sent twitter messages while exploring, are you on a textpedition?
He's about as useful as a wax frying pan.
10 to the 12th power microphones = 1 Megaphone
Maranatha! <>< John McKown
--
Melvin Davidson I reserve the right to fantasize. Whether or not you wish to share my fantasy is entirely up to you.