Section I - 2.9: Use SELECT to confirm set of rows before DELETE

Started by PG Bug reporting formalmost 4 years ago3 messagesdocs
Jump to latest
#1PG Bug reporting form
noreply@postgresql.org

The following documentation comment has been logged on the website:

Page: https://www.postgresql.org/docs/14/tutorial-delete.html
Description:

Since this tutorial section is coined at beginners, I think it could be
useful to tip users about the possibility to use a SELECT statement with the
exact same qualification(s) as the DELETE statement they're planning to run
to see which rows are about to be deleted, to avoid unintended deletion of
rows. I suggest something like this:

...
Without a qualification, DELETE will remove all rows from the given table,
leaving it empty. The system will not request confirmation before doing
this!

You can check which rows will be deleted by any DELETE statement on the
form:
```DELETE FROM tablename ... <qualificaton> ...```
by rewriting it into a corresponding SELECT statement:
```SELECT * FROM tablename ... <qualification> ...```

This is my first attempt at contributing to the community, so please be
nice. :)

#2Bruce Momjian
bruce@momjian.us
In reply to: PG Bug reporting form (#1)
Re: Section I - 2.9: Use SELECT to confirm set of rows before DELETE

On Mon, Jun 6, 2022 at 09:19:17PM +0000, PG Doc comments form wrote:

The following documentation comment has been logged on the website:

Page: https://www.postgresql.org/docs/14/tutorial-delete.html
Description:

Since this tutorial section is coined at beginners, I think it could be
useful to tip users about the possibility to use a SELECT statement with the
exact same qualification(s) as the DELETE statement they're planning to run
to see which rows are about to be deleted, to avoid unintended deletion of
rows. I suggest something like this:

...
Without a qualification, DELETE will remove all rows from the given table,
leaving it empty. The system will not request confirmation before doing
this!

You can check which rows will be deleted by any DELETE statement on the
form:
```DELETE FROM tablename ... <qualificaton> ...```
by rewriting it into a corresponding SELECT statement:
```SELECT * FROM tablename ... <qualification> ...```

This is my first attempt at contributing to the community, so please be
nice. :)

Uh, this is more of a general SQL training that we don't normally cover
in the Postgres docs --- we try to focus on Postgres-specific stuff that
people need to know.

--
Bruce Momjian <bruce@momjian.us> https://momjian.us
EDB https://enterprisedb.com

Indecision is a decision. Inaction is an action. Mark Batterson

#3Adrian Wiik
adrian.nesse.wiik@gmail.com
In reply to: Bruce Momjian (#2)
Re: Section I - 2.9: Use SELECT to confirm set of rows before DELETE

That makes sense. Thanks for letting me know!

On Sun, Jul 10, 2022, 3:17 AM Bruce Momjian <bruce@momjian.us> wrote:

Show quoted text

On Mon, Jun 6, 2022 at 09:19:17PM +0000, PG Doc comments form wrote:

The following documentation comment has been logged on the website:

Page: https://www.postgresql.org/docs/14/tutorial-delete.html
Description:

Since this tutorial section is coined at beginners, I think it could be
useful to tip users about the possibility to use a SELECT statement with

the

exact same qualification(s) as the DELETE statement they're planning to

run

to see which rows are about to be deleted, to avoid unintended deletion

of

rows. I suggest something like this:

...
Without a qualification, DELETE will remove all rows from the given

table,

leaving it empty. The system will not request confirmation before doing
this!

You can check which rows will be deleted by any DELETE statement on the
form:
```DELETE FROM tablename ... <qualificaton> ...```
by rewriting it into a corresponding SELECT statement:
```SELECT * FROM tablename ... <qualification> ...```

This is my first attempt at contributing to the community, so please be
nice. :)

Uh, this is more of a general SQL training that we don't normally cover
in the Postgres docs --- we try to focus on Postgres-specific stuff that
people need to know.

--
Bruce Momjian <bruce@momjian.us> https://momjian.us
EDB https://enterprisedb.com

Indecision is a decision. Inaction is an action. Mark Batterson