Clarify error message and documentation related to typed tables.
Tom Lane <tgl@sss.pgh.pa.us>
Clarify error message and documentation related to typed tables. We restrict typed tables (those declared as "OF composite_type") to be based on stand-alone composite types, not composite types that are the implicitly-created rowtypes of other tables. But if you tried to do that, you got the very confusing error message "type foo is not a composite type". Provide a more specific message for that case. Also clarify related documentation in the CREATE TABLE man page. Erik Wienhold and David G. Johnston, per complaint from Hannu Krosing. Discussion: https://postgr.es/m/CAMT0RQRysCb_Amy5CTENSc5GfsvXL1a4qX3mv_hx31_v74P==g@mail.gmail.com
Files
| Path | Change | +/− |
|---|---|---|
| doc/src/sgml/ref/create_table.sgml | modified | +8 −8 |
| src/backend/commands/tablecmds.c | modified | +8 −1 |
| src/test/regress/expected/typed_table.out | modified | +6 −1 |
| src/test/regress/sql/typed_table.sql | modified | +4 −0 |
Documentation touched
Discussion
- CREATE TABLE creates a composite type corresponding to the table row, which is and is not there 17 messages · 2024-03-08 → 2024-07-26