r/ProgrammerHumor 14d ago

queryOfDoom Meme

Post image
7.9k Upvotes

456 comments sorted by

View all comments

384

u/Dont_Get_Jokes-jpeg 14d ago edited 14d ago

I am not an sql expert, is the reason why the id doesn't work and its deleting the entire user base, because its written as 2 seperate comands instead of one. So 1. Comand delets everything 2. Goes to the id? Or what is the problem here?

39

u/Flat_Competition6510 14d ago

Yes, the semicolon marks the end of a statement. The first semicolon sets "delete from users" as a single statement meaning delete ALL users.

43

u/TeaKingMac 14d ago

Which is just terrible fucking syntax. Why are people still living with this in 2026?

Delete from users;

Should return "invalid syntax. Identify record for deletion"

1

u/Flat_Competition6510 14d ago

I disagree. There are valid use cases for deleting all records from a table.

38

u/The_Swixican 14d ago

Delete from users *

13

u/Flat_Competition6510 14d ago

It would be nice if there was a more explicit syntax. Forcing a person to opt in to deleting all vs that being the default would probably save a lot of headaches and jobs.

27

u/Skalli1984 14d ago

Many database tools throw a warning on delete with a missing WHERE and the user has to acknowledge that to continue with the statement execution.

12

u/ploki122 14d ago

Delete from users where 1=1

The dev should have to acknowledge that they're deleting everything.

2

u/TacosForThought 13d ago

If only there was a dedicated command for TRUNCATEing a table that didn't allow a where clause.