Вы можете использовать оператор case в своем обновлении и проверить для null
параметра, чтобы увидеть, следует ли использовать параметр или следует использовать значение, которое уже есть в таблице.
create procedure UpdateYourTable
@ID int,
@Col1 int = null,
@Col2 int = null
as
update YourTable
set Col1 = case when @Col1 is null
then Col1
else @Col1
end,
Col2 = case when @Col2 is null
then Col2
else @Col2
end
where ID = @ID
Выполните так, чтобы установить значение для Col2
и использовать значение по умолчанию null
для Col1:
exec UpdateYourTable @ID = 1, @Col2 = 200