information_schema.columns.column_default filtered based on user

Started by George Pavlovabout 20 years ago2 messagesgeneral
Jump to latest
#1George Pavlov
gpavlov@mynewplace.com

Looking at the information_schema.columns view I have been wondering why
it only shows the column_default for columns in tables owned by the
current user? Makes things a bit misleading. I am thinking at least
superusers should be able to see that?

This is what I am talking about:

CREATE OR REPLACE VIEW information_schema.columns AS
SELECT current_database()::information_schema.sql_identifier AS
table_catalog,
<snip>
CASE
WHEN u.usename = "current_user"() THEN ad.adsrc
ELSE NULL::text
END::information_schema.character_data AS column_default,
<snip>

George

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: George Pavlov (#1)
Re: information_schema.columns.column_default filtered based on user

"George Pavlov" <gpavlov@mynewplace.com> writes:

Looking at the information_schema.columns view I have been wondering why
it only shows the column_default for columns in tables owned by the
current user?

Because that's what the SQL99 spec says it should do.

The SQL2003 spec seems to have a looser definition, but we haven't
gotten around to trying to make information_schema follow SQL2003
instead of SQL99 ...

regards, tom lane