У меня проблема со вставкой данных в таблицу SQL 2008.
У меня есть 6 SP, и все они выполняются в транзакции из кода ADO.Net.Первые 3 SP удаляют данные, а следующие 3 SP вставляют данные в эти таблицы.Эти SP являются частью службы Windows.Я заметил, что когда работает один экземпляр службы, все работает нормально, но если запущено несколько экземпляров службы, я сталкиваюсь с проблемой параллелизма данных.Один из SP выдает ошибку с нарушением PrimaryKey из одного сервиса, в то время как тот же SP с одинаковыми данными, запущенными с другого сервера, работает нормально.
Я установил уровень изоляции транзакции RepeatableRead в коде ADO.Net.
Может кто-нибудь сказать мне, что мне здесь не хватает?Должен ли я использовать HOLDLOCK в SP при вставке данных?