Добрый вечер.
Используйте таблицу users для аутентификации, в ней будут все, и админы и пользователи и модераторы.
А таблицу профилей уже привязывайте через id из таблицы users.
Так же используйте rbac для разграничения прав пользователей.
При удалении таблиц не обязательно удалять сначала внешние ключи. Они удалятся вместе с таблицами. А вот порядок удаления таблиц играет роль. Удалять надо в обратном порядке.