"David F. Skoll" <[EMAIL PROTECTED]> writes:
> How about this:

> pg_dump -t t1                          -- Dump table t1 in any schema
> pg_dump -n s1                          -- Dump all of schema s1
> pg_dump -t t1 -n s1                    -- Dump t1 in s1
> pg_dump -t t1 -t t2 -n s1              -- Dump s1.t1 and s1.t2
> pg_dump -t t1 -t t2 -n s1 -n s2        -- Dump s1.t1, s1.t2, s2.t1 and s2.t2

Why not

pg_dump -t t1                          -- Dump table t1 in any schema
pg_dump -n s1                          -- Dump all of schema s1
pg_dump -t s1.t1                       -- Dump t1 in s1
pg_dump -t s1.t1 -t s2.t2              -- Dump s1.t1 and s2.t2
pg_dump -t t1 -t t2 -n s1 -n s2        -- Dump s1.t1, s1.t2, s2.t1 and s2.t2

That is, the rules are:
        - if any -t switches appear, only tables matching (any one of)
          those switches are dumped
        - if any -n switches appear, only objects in (any one of)
          those schemas are dumped
        - a -t switch can be name only or schema.name

The cross-product semantics you're proposing can't implement my fourth
example.

I really dislike the idea of switch ordering making a difference...

> We also probably should not warn about missing tables, because it's
> likely that the full cartesian product of schemas and tables won't
> exist.

Agreed.  If any -t or -n switches appear, then warn only if *no* objects
get selected.

                        regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]

Reply via email to