Что было бы самым эффективным способом предотвращения вставки повторяющихся строк в таблице SQL, которая может содержать до 500 миллионов строк?Предотвращение дублирования в большой таблице SQL Server наиболее эффективно
Я вижу два пути:
1) Создание составного первичного ключа на колоннах, которые определяют дубликат записи и перехватывать исключения DuplicateKey.
2) использовать IF NOT EXISTS(SELECT ID FROM TABLE WHERE [MyCondition])
, но для этого потребуется индексировать те столбцы, которые участвуют в предложении WHERE
.