Обсуждение: Saving view turns SELECT * into field list
Hey team – I’m sure this has come up, but my search engine skills couldn’t find an explanation:
Why, when I save a simple view like:
SELECT * FROM a_table
…does PostgreSQL turn the * into a field list like:
SELECT field1, field2, field3, field4 FROM a_table
?
This is super-frustrating, as it means I’ll have to manually change an aggregating “parent” view’s select lists every time I change the “child” views.
Thanks for any info. -Ben
Ben Uphoff <buphoff@villagemd.com> writes: > Why, when I save a simple view like: > SELECT * FROM a_table > …does PostgreSQL turn the * into a field list like: > SELECT field1, field2, field3, field4 FROM a_table > ? Because the SQL standard says we should. There's explicit text in there to the effect that adding columns to the underlying table does not add columns to the view. Which, I'm sure, is exactly what you wished would happen ... but they say not to. regards, tom lane
Why, when I save a simple view like:
SELECT * FROM a_table
…does PostgreSQL turn the * into a field list like:
SELECT field1, field2, field3, field4 FROM a_table
******************* PLEASE NOTE ******************* This E-Mail/telefax message and any documents accompanying this transmission may contain information that is privileged, confidential, and/or exempt from disclosure under applicable law and is intended solely for the addressee(s) named above. If you are not the intended addressee/recipient, you are hereby notified that any use of, disclosure, copying, distribution, or reliance on the contents of this E-Mail/telefax information is strictly prohibited and may result in legal action against you. Please reply to the sender advising of the error in transmission and immediately delete/destroy the message and any accompanying documents. Thank you.Hey team – I’m sure this has come up, but my search engine skills couldn’t find an explanation:
Why, when I save a simple view like:
SELECT * FROM a_table
…does PostgreSQL turn the * into a field list like:
SELECT field1, field2, field3, field4 FROM a_table
?
This is super-frustrating, as it means I’ll have to manually change an aggregating “parent” view’s select lists every time I change the “child” views.
Thanks for any info. -Ben