сущность про уникальность вещей в других сущностях знать ничего не может. Потому тебе нужно что-то снаружи что будет задавать эту политику в случае конфликта
Ну тут есть вариант, что именно в сущности будет генериться логика создания "уникальной" строки. Т.е. вышибает констрейнт, ловим, в сущности вызываем метод генерации строки, она что-то там добавляет. Ретрай и так по кругу. Ну чтобы сеттер на поле не городить. Или плохая идея ?