DROP ROLE и dropuser в PostgreSQL выполняют разные задачи:
- DROP ROLE удаляет указанные роли в базе данных. 2 Чтобы удалить роль суперпользователя, нужно быть самим суперпользователем, а чтобы удалить роль обычного пользователя, необходимо иметь право CREATEROLE и ADMIN OPTION для роли. 2
- dropuser удаляет существующего пользователя PostgreSQL и базы данных, которыми он владел. 1 Для этого нужно подключиться к хосту как суперпользователь или пользователь с привилегией CREATEROLE. 4
Таким образом, основное отличие в том, что DROP ROLE удаляет роли, а dropuser — пользователей и базы данных, которыми они владели. 14
При этом практического различия между командами DROP USER и DROP ROLE нет, их можно использовать взаимозаменяемо для удаления пользователей или ролей. 3