Removing accounts

Tugg@lemmyverse.org to Lemmy@lemmy.ml – 21 points –

Can somebody let me know how I would remove an account from the posgreSQL database?

I can see the tables, but don't know where the accounts are held or the sql statement to delete them.

Thank you.

5

I have used

UPDATE person
SET deleted = 't'
WHERE id =nnnn;

You can get the id's from:

SELECT id, name, published
FROM person
WHERE instance_id= 1 and deleted = 'f'
ORDER by id;

This probably needs verification, so run at your own risk!

The SQL statement to delete would be: DELETE from person where name = '...'

person is the table of users.

name = '...' is the condition for the row that is to be deleted.

You can also modify the condition to, for example, delete a user using the id instead of their name (username).

Here's a link to the "schema" of the person table as generated by the backend code.

With federated services it’s generally a bad idea to fully delete an account, it’s better to mark the account as “deleted” so future requests can be notified of the deletion

This also prevents people from impersonating others

I have not searched but shouldn't they have some database schema documentations such as ER diagrams?