diff options
author | Heikki Linnakangas <heikki.linnakangas@iki.fi> | 2013-02-25 19:39:04 +0200 |
---|---|---|
committer | Heikki Linnakangas <heikki.linnakangas@iki.fi> | 2013-02-25 19:39:04 +0200 |
commit | 691e595dd9c7786d37d73ccd327f8c2b6f0dace6 (patch) | |
tree | a8fc34b3368316b469d381cfa6d203eb4ff57ae2 /src | |
parent | a64e33f030f3ba379a0d3e22fe6bcda9dc3bbc60 (diff) | |
download | postgresql-691e595dd9c7786d37d73ccd327f8c2b6f0dace6.tar.gz postgresql-691e595dd9c7786d37d73ccd327f8c2b6f0dace6.zip |
Add -d/--dbname option to pg_dump.
You could already pass a database name just by passing it as the last
option, without -d. This is an alias for that, like the -d/--dbname option
in psql and many other client applications. For consistency.
Diffstat (limited to 'src')
-rw-r--r-- | src/bin/pg_dump/pg_dump.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/bin/pg_dump/pg_dump.c b/src/bin/pg_dump/pg_dump.c index 43d571ca5bb..7903b79a323 100644 --- a/src/bin/pg_dump/pg_dump.c +++ b/src/bin/pg_dump/pg_dump.c @@ -307,6 +307,7 @@ main(int argc, char **argv) {"blobs", no_argument, NULL, 'b'}, {"clean", no_argument, NULL, 'c'}, {"create", no_argument, NULL, 'C'}, + {"dbname", required_argument, NULL, 'd'}, {"file", required_argument, NULL, 'f'}, {"format", required_argument, NULL, 'F'}, {"host", required_argument, NULL, 'h'}, @@ -387,7 +388,7 @@ main(int argc, char **argv) } } - while ((c = getopt_long(argc, argv, "abcCE:f:F:h:in:N:oOp:RsS:t:T:U:vwWxZ:", + while ((c = getopt_long(argc, argv, "abcCd:E:f:F:h:iK:n:N:oOp:RsS:t:T:U:vwWxZ:", long_options, &optindex)) != -1) { switch (c) @@ -408,6 +409,10 @@ main(int argc, char **argv) outputCreateDB = 1; break; + case 'd': /* database name */ + dbname = pg_strdup(optarg); + break; + case 'E': /* Dump encoding */ dumpencoding = pg_strdup(optarg); break; @@ -520,8 +525,11 @@ main(int argc, char **argv) } } - /* Get database name from command line */ - if (optind < argc) + /* + * Non-option argument specifies database name as long as it wasn't + * already specified with -d / --dbname + */ + if (optind < argc && dbname == NULL) dbname = argv[optind++]; /* Complain if any arguments remain */ @@ -872,6 +880,7 @@ help(const char *progname) " ALTER OWNER commands to set ownership\n")); printf(_("\nConnection options:\n")); + printf(_(" -d, --dbname=DBNAME database to dump\n")); printf(_(" -h, --host=HOSTNAME database server host or socket directory\n")); printf(_(" -p, --port=PORT database server port number\n")); printf(_(" -U, --username=NAME connect as specified database user\n")); |