Update patch for DEFAULT on Views.
authorBruce Momjian
Wed, 24 Apr 2002 02:42:27 +0000 (02:42 +0000)
committerBruce Momjian
Wed, 24 Apr 2002 02:42:27 +0000 (02:42 +0000)
Apparently, you need to make two calls to appendPQExpBuffer() to
use fmtId() twice, because it uses a static buffer (thanks for
spotting this Tom).

Another revision of the patch is attached.

Neil Conway 

src/bin/pg_dump/pg_dump.c

index 8eea64ca68abb7b2ae5b781627432f6fdf0db38d..c4b6352075f66dcf6dc2f37fc422cc0da9f9004a 100644 (file)
@@ -22,7 +22,7 @@
  *
  *
  * IDENTIFICATION
- *   $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v 1.252 2002/04/24 02:38:58 momjian Exp $
+ *   $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v 1.253 2002/04/24 02:42:27 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -4376,10 +4376,12 @@ dumpTables(Archive *fout, TableInfo *tblinfo, int numTables,
                 */
                for (j = 0; j < tblinfo[i].numatts; j++)
                {
-                   if (tblinfo[i].adef_expr[j] != NULL && tblinfo[i].inhAttrDef[j] == 0)
-                       appendPQExpBuffer(q, "ALTER TABLE %s ALTER COLUMN %s SET DEFAULT %s;\n",
-                                         tblinfo[i].relname, tblinfo[i].attnames[j],
+                   if (tblinfo[i].adef_expr[j] != NULL && tblinfo[i].inhAttrDef[j] == 0) {
+                       appendPQExpBuffer(q, "ALTER TABLE %s ", fmtId(tblinfo[i].relname, force_quotes));
+                       appendPQExpBuffer(q, "ALTER COLUMN %s SET DEFAULT %s;\n",
+                                         fmtId(tblinfo[i].attnames[j], force_quotes),
                                          tblinfo[i].adef_expr[j]);
+                   }
                }
 
                commentDeps = malloc(sizeof(char *) * 2);