Скажем, у вас есть большой стол, называемый заказами, и маленький стол, называемый клиентами. Существует внешний ключ от заказа к клиенту. Теперь, если вы удаляете клиента, Sql Server должен проверить, что нет орфанных заказов; если они есть, возникает ошибка.
Чтобы проверить, есть ли какие-либо заказы, Sql Server должен выполнить поиск в таблице больших заказов. Теперь, если есть индекс, поиск будет быстрым; если нет, поиск будет медленным.
Так что в этом случае медленное удаление может быть объяснено отсутствием индекса. Особенно, если Sql Server придется искать 15 больших таблиц без индекса.
P.S. Если внешний ключ имеет значение ON DELETE CASCADE, Sql Server все равно должен выполнить поиск в таблице заказов, но затем удалить все заказы, которые ссылаются на удаленного клиента.