From bf00bbb0c4940b80b46b7e5b379cd64184f2262f Mon Sep 17 00:00:00 2001 From: "Marc G. Fournier" Date: Fri, 24 Jul 1998 03:32:46 +0000 Subject: I really hope that I haven't missed anything in this one... From: t-ishii@sra.co.jp Attached are patches to enhance the multi-byte support. (patches are against 7/18 snapshot) * determine encoding at initdb/createdb rather than compile time Now initdb/createdb has an option to specify the encoding. Also, I modified the syntax of CREATE DATABASE to accept encoding option. See README.mb for more details. For this purpose I have added new column "encoding" to pg_database. Also pg_attribute and pg_class are changed to catch up the modification to pg_database. Actually I haved added pg_database_mb.h, pg_attribute_mb.h and pg_class_mb.h. These are used only when MB is enabled. The reason having separate files is I couldn't find a way to use ifdef or whatever in those files. I have to admit it looks ugly. No way. * support for PGCLIENTENCODING when issuing COPY command commands/copy.c modified. * support for SQL92 syntax "SET NAMES" See gram.y. * support for LATIN2-5 * add UNICODE regression test case * new test suite for MB New directory test/mb added. * clean up source files Basic idea is to have MB's own subdirectory for easier maintenance. These are include/mb and backend/utils/mb. --- src/backend/commands/dbcommands.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'src/backend/commands/dbcommands.c') diff --git a/src/backend/commands/dbcommands.c b/src/backend/commands/dbcommands.c index 2d4bdcb39b9..c2518b5a613 100644 --- a/src/backend/commands/dbcommands.c +++ b/src/backend/commands/dbcommands.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/commands/dbcommands.c,v 1.15 1998/06/15 19:28:14 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/commands/dbcommands.c,v 1.16 1998/07/24 03:31:15 scrappy Exp $ * *------------------------------------------------------------------------- */ @@ -22,7 +22,11 @@ #include "access/htup.h" #include "access/relscan.h" #include "catalog/catname.h" +#ifdef MB +#include "catalog/pg_database_mb.h" +#else #include "catalog/pg_database.h" +#endif #include "catalog/pg_shadow.h" #include "commands/dbcommands.h" #include "fmgr.h" @@ -43,7 +47,11 @@ static HeapTuple get_pg_dbtup(char *command, char *dbname, Relation dbrel); static void stop_vacuum(char *dbpath, char *dbname); void +#ifdef MB +createdb(char *dbname, char *dbpath, int encoding) +#else createdb(char *dbname, char *dbpath) +#endif { Oid db_id, user_id; @@ -90,8 +98,13 @@ createdb(char *dbname, char *dbpath) dbname, user_id, dbname); #endif +#ifdef MB + sprintf(buf, "insert into pg_database (datname, datdba, encoding, datpath)" + " values (\'%s\', \'%d\', \'%d\', \'%s\');", dbname, user_id, encoding, loc); +#else sprintf(buf, "insert into pg_database (datname, datdba, datpath)" " values (\'%s\', \'%d\', \'%s\');", dbname, user_id, loc); +#endif pg_exec_query(buf); } -- cgit v1.2.3