Re: [DOCS] BUG #7543: Invalid table alias: DELETE FROM table * - Mailing list pgsql-bugs

From Bruce Momjian
Subject Re: [DOCS] BUG #7543: Invalid table alias: DELETE FROM table *
Date
Msg-id 20120926154159.GB11785@momjian.us
Whole thread Raw
In response to Re: BUG #7543: Invalid table alias: DELETE FROM table *  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: [DOCS] BUG #7543: Invalid table alias: DELETE FROM table *
List pgsql-bugs
On Sun, Sep 16, 2012 at 11:58:06PM -0400, Tom Lane wrote:
> barrybrown@sierracollege.edu writes:
> > I sometime see my users delete all rows from a table using a command like
> > this:
>
> > DELETE FROM customer *;
>
> > The question is: what is the star? Is it a table alias or an
> > output_expression?
>
> Neither; it specifies to search the table and its inheritance children,
> ie, the opposite of ONLY.  This has been the default behavior (unless
> you change the setting of sql_inheritance) for many years, so "*" has
> largely fallen into disuse; but it's still accepted.
>
> However ... I went looking for documentation on this point, and I'm
> darned if I can find any.  There certainly used to be some, but
> apparently somebody got over-eager about editing the docs to reflect
> the modern default behavior.  The "*" doesn't even appear in the syntax
> summaries for most of the commands where it's allowed, which is flat
> wrong --- anywhere you can write "ONLY tablename", it's valid to write
> "tablename*" instead.
>
> So we have some docs work to do.  Thanks for pointing it out.

Is there any value to having * vs just not using ONLY?  I am not sure
documenting this is helping us, and it would add more clutter.  Isn't
this like how we don't document the old COPY syntax.

--
  Bruce Momjian  <bruce@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

  + It's impossible for everything to be true. +


pgsql-bugs by date:

Previous
From: Stefan Pröls
Date:
Subject: Re: BUG #7567: Sequences not properly replicated
Next
From: Tom Lane
Date:
Subject: Re: [DOCS] BUG #7543: Invalid table alias: DELETE FROM table *