Вы всегда должны накладывать уникальные ограничения на поля, которые должны оставаться уникальными.Это, однако, приведет к загадочному исключению во время фиксации.Если вы хотите быть более дружественным к пользователю, вы должны проверить, существует ли уже запись (используя запрос), прежде чем вставлять ее, и показать пользователю полезное и читаемое сообщение об ошибке, если запись уже существует.
Это по-прежнему позволяет двум одновременным пользователям проверять одновременно, а затем вставлять в одно и то же время, но это значительно снижает вероятность, а уникальное ограничение гарантирует, что один из коммитов потерпит неудачу, оставив вашу базу данныхв согласованном состоянии.