diff options
| author | Tom Lane <tgl@sss.pgh.pa.us> | 2005-08-01 04:03:59 +0000 |
|---|---|---|
| committer | Tom Lane <tgl@sss.pgh.pa.us> | 2005-08-01 04:03:59 +0000 |
| commit | 35508d1cca1630e40b157d67b427174c3e1999aa (patch) | |
| tree | 5779ce1a2a645766399fddf8761ef70e388bbc93 /src/backend/nodes/copyfuncs.c | |
| parent | a85e5d1b1b346e039aef61d23775dd1f2ff547ae (diff) | |
| download | postgresql-35508d1cca1630e40b157d67b427174c3e1999aa.tar.gz | |
Add ALTER object SET SCHEMA capability for a limited but useful set of
object kinds (tables, functions, types). Documentation is not here yet.
Original code by Bernd Helmle, extensive rework by Bruce Momjian and
Tom Lane.
Diffstat (limited to 'src/backend/nodes/copyfuncs.c')
| -rw-r--r-- | src/backend/nodes/copyfuncs.c | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/src/backend/nodes/copyfuncs.c b/src/backend/nodes/copyfuncs.c index 35fbee6164..f3189fc14a 100644 --- a/src/backend/nodes/copyfuncs.c +++ b/src/backend/nodes/copyfuncs.c @@ -15,7 +15,7 @@ * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/nodes/copyfuncs.c,v 1.313 2005/07/31 17:19:18 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/nodes/copyfuncs.c,v 1.314 2005/08/01 04:03:56 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -2035,12 +2035,27 @@ _copyRenameStmt(RenameStmt *from) { RenameStmt *newnode = makeNode(RenameStmt); + COPY_SCALAR_FIELD(renameType); COPY_NODE_FIELD(relation); COPY_NODE_FIELD(object); COPY_NODE_FIELD(objarg); COPY_STRING_FIELD(subname); COPY_STRING_FIELD(newname); - COPY_SCALAR_FIELD(renameType); + + return newnode; +} + +static AlterObjectSchemaStmt * +_copyAlterObjectSchemaStmt(AlterObjectSchemaStmt *from) +{ + AlterObjectSchemaStmt *newnode = makeNode(AlterObjectSchemaStmt); + + COPY_SCALAR_FIELD(objectType); + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(object); + COPY_NODE_FIELD(objarg); + COPY_STRING_FIELD(addname); + COPY_STRING_FIELD(newschema); return newnode; } @@ -2050,12 +2065,12 @@ _copyAlterOwnerStmt(AlterOwnerStmt *from) { AlterOwnerStmt *newnode = makeNode(AlterOwnerStmt); + COPY_SCALAR_FIELD(objectType); COPY_NODE_FIELD(relation); COPY_NODE_FIELD(object); COPY_NODE_FIELD(objarg); COPY_STRING_FIELD(addname); COPY_STRING_FIELD(newowner); - COPY_SCALAR_FIELD(objectType); return newnode; } @@ -2983,6 +2998,9 @@ copyObject(void *from) case T_RenameStmt: retval = _copyRenameStmt(from); break; + case T_AlterObjectSchemaStmt: + retval = _copyAlterObjectSchemaStmt(from); + break; case T_AlterOwnerStmt: retval = _copyAlterOwnerStmt(from); break; |
