For create/dropdb, only connect once to the server since we now have a

shared description table for pg_database comments.

Also update comments about database name selection.
This commit is contained in:
Bruce Momjian 2011-05-10 19:44:15 -04:00
parent 87631ac98d
commit 7ff7711919
2 changed files with 12 additions and 4 deletions

View File

@ -192,6 +192,11 @@ main(int argc, char *argv[])
appendPQExpBuffer(&sql, ";\n");
/*
* Connect to the 'postgres' database by default, except have
* the 'postgres' user use 'template1' so he can create the
* 'postgres' database.
*/
conn = connectDatabase(strcmp(dbname, "postgres") == 0 ? "template1" : "postgres",
host, port, username, prompt_password, progname);
@ -208,12 +213,9 @@ main(int argc, char *argv[])
}
PQclear(result);
PQfinish(conn);
if (comment)
{
conn = connectDatabase(dbname, host, port, username, prompt_password, progname);
printfPQExpBuffer(&sql, "COMMENT ON DATABASE %s IS ", fmtId(dbname));
appendStringLiteralConn(&sql, comment, conn);
appendPQExpBuffer(&sql, ";\n");
@ -231,9 +233,10 @@ main(int argc, char *argv[])
}
PQclear(result);
PQfinish(conn);
}
PQfinish(conn);
exit(0);
}

View File

@ -113,6 +113,11 @@ main(int argc, char *argv[])
appendPQExpBuffer(&sql, "DROP DATABASE %s;\n",
fmtId(dbname));
/*
* Connect to the 'postgres' database by default, except have
* the 'postgres' user use 'template1' so he can drop the
* 'postgres' database.
*/
conn = connectDatabase(strcmp(dbname, "postgres") == 0 ? "template1" : "postgres",
host, port, username, prompt_password, progname);