У меня есть таблица базы данных, для которой определено ограничение уникального ключа, чтобы избежать повторяющихся записей.
Мне любопытно, если это плохая практика - НЕ проверять вручную дубликаты записей перед выполнением оператора INSERT для таблицы.
Другими словами, должен ли я выполнить инструкцию SELECT, используя предложение WHERE, которое проверяет дубликаты значений записи, которую я собираюсь вставить. Если запись найдена, не запускайте оператор INSERT, в противном случае продолжите и выполните INSERT ....
OR
Просто запустите оператор INSERT и попробуйте / поймайте исключение, которое может быть вызвано из-за нарушения уникального ключа.
Я взвешиваю две перспективы и не могу решить, какая из них лучше
1. Не тратьте вызов SELECT для проверки дубликатов, когда я могу просто перехватить исключение VS
2. Не ленитесь, применяя уродливую логику try / catch
В.С.
3. Ваши мысли здесь :)