summaryrefslogtreecommitdiff
path: root/src/backend/tcop/utility.c
diff options
context:
space:
mode:
authorPeter Eisentraut <peter_e@gmx.net>2011-02-12 15:54:13 +0200
committerPeter Eisentraut <peter_e@gmx.net>2011-02-12 15:55:18 +0200
commitb313bca0afce3ab9dab0a77c64c0982835854b9a (patch)
tree862203ffd9adbc62684bec05fa32b2de4713e6b9 /src/backend/tcop/utility.c
parentd31e2a495b6f2127afc31b4da2e5f4e89aa2cdfe (diff)
DDL support for collations
- collowner field - CREATE COLLATION - ALTER COLLATION - DROP COLLATION - COMMENT ON COLLATION - integration with extensions - pg_dump support for the above - dependency management - psql tab completion - psql \dO command
Diffstat (limited to 'src/backend/tcop/utility.c')
-rw-r--r--src/backend/tcop/utility.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/backend/tcop/utility.c b/src/backend/tcop/utility.c
index 8ca042024f3..67aa5e2ab63 100644
--- a/src/backend/tcop/utility.c
+++ b/src/backend/tcop/utility.c
@@ -26,6 +26,7 @@
#include "commands/async.h"
#include "commands/cluster.h"
#include "commands/comment.h"
+#include "commands/collationcmds.h"
#include "commands/conversioncmds.h"
#include "commands/copy.h"
#include "commands/dbcommands.h"
@@ -665,6 +666,10 @@ standard_ProcessUtility(Node *parsetree,
RemoveTypes(stmt);
break;
+ case OBJECT_COLLATION:
+ DropCollationsCommand(stmt);
+ break;
+
case OBJECT_CONVERSION:
DropConversionsCommand(stmt);
break;
@@ -884,6 +889,10 @@ standard_ProcessUtility(Node *parsetree,
Assert(stmt->args == NIL);
DefineTSConfiguration(stmt->defnames, stmt->definition);
break;
+ case OBJECT_COLLATION:
+ Assert(stmt->args == NIL);
+ DefineCollation(stmt->defnames, stmt->definition);
+ break;
default:
elog(ERROR, "unrecognized define stmt type: %d",
(int) stmt->kind);
@@ -1453,6 +1462,9 @@ AlterObjectTypeCommandTag(ObjectType objtype)
case OBJECT_CAST:
tag = "ALTER CAST";
break;
+ case OBJECT_COLLATION:
+ tag = "ALTER COLLATION";
+ break;
case OBJECT_COLUMN:
tag = "ALTER TABLE";
break;
@@ -1754,6 +1766,9 @@ CreateCommandTag(Node *parsetree)
case OBJECT_DOMAIN:
tag = "DROP DOMAIN";
break;
+ case OBJECT_COLLATION:
+ tag = "DROP COLLATION";
+ break;
case OBJECT_CONVERSION:
tag = "DROP CONVERSION";
break;
@@ -1867,6 +1882,9 @@ CreateCommandTag(Node *parsetree)
case OBJECT_TSCONFIGURATION:
tag = "CREATE TEXT SEARCH CONFIGURATION";
break;
+ case OBJECT_COLLATION:
+ tag = "CREATE COLLATION";
+ break;
default:
tag = "???";
}