если у меня есть уникальное ограничение для отдела столбцов, и я не хочу, чтобы SQL генерировал уникальное нарушение ограничения, вместо этого я бы НЕ хотел обновлять столбец, если значение уже существует в другой строке.Безопасно ли это использовать (непротиворечивость), если два или более пользователей / соединения выполняют один и тот же код одновременно?СПАСИБО!
declare @piDepartment varchar(20) = 'test'
declare @piDepartmentSid int = 1105;
WITH CTE
as
(
select top 1 1 [exists]
from
dbo.tb_Department
where
Department = @piDepartment and
[Department_SID] <> @piDepartmentSid
)
update D set
Department = @piDepartment
FROM
dbo.tb_Department D
left join CTE on 1 = CTE.[exists]
where
D.Department_SID = @piDepartmentSid and
CTE.[exists] is null;