aboutsummaryrefslogtreecommitdiff
path: root/src/backend/parser/parse_utilcmd.c
diff options
context:
space:
mode:
authorPeter Eisentraut <peter_e@gmx.net>2010-09-26 14:41:03 +0300
committerPeter Eisentraut <peter_e@gmx.net>2010-09-26 14:41:03 +0300
commite440e12c562432a2a695b8054964fb34e3bd823e (patch)
tree9f075dbc9e292746f81390f0f44803090bf73d07 /src/backend/parser/parse_utilcmd.c
parent899beb78941aa955aac2e19cb82458c6f4c7dd52 (diff)
downloadpostgresql-e440e12c562432a2a695b8054964fb34e3bd823e.tar.gz
postgresql-e440e12c562432a2a695b8054964fb34e3bd823e.zip
Add ALTER TYPE ... ADD/DROP/ALTER/RENAME ATTRIBUTE
Like with tables, this also requires allowing the existence of composite types with zero attributes. reviewed by KaiGai Kohei
Diffstat (limited to 'src/backend/parser/parse_utilcmd.c')
-rw-r--r--src/backend/parser/parse_utilcmd.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/backend/parser/parse_utilcmd.c b/src/backend/parser/parse_utilcmd.c
index 552a6af8f87..37ca331c215 100644
--- a/src/backend/parser/parse_utilcmd.c
+++ b/src/backend/parser/parse_utilcmd.c
@@ -839,6 +839,9 @@ transformOfType(ParseState *pstate, CreateStmtContext *cxt, TypeName *ofTypename
Form_pg_attribute attr = tupdesc->attrs[i];
ColumnDef *n = makeNode(ColumnDef);
+ if (attr->attisdropped)
+ continue;
+
n->colname = pstrdup(NameStr(attr->attname));
n->typeName = makeTypeNameFromOid(attr->atttypid, attr->atttypmod);
n->constraints = NULL;