У меня есть хранимая процедура, которая заботится об обновлениях моей персональной таблицы.Я не всегда обновляю каждый столбец, поэтому я предоставил значения по умолчанию (null) для некоторых параметров процедуры.Но что, если я действительно хочу установить для person.middleinitial значение null?Откуда процедура знает мои намерения?
На самом деле моя личная таблица имеет множество столбцов, и многие из них обнуляются, так что это может стать обременительным в зависимости от решения.
ALTER PROCEDURE [dbo].[uspPerson_update]
@id uniqueidentifier,
@fname nvarchar(20) = NULL,
@minitial nvarchar(1) = NULL,
@lname nvarchar(20) = NULL
AS BEGIN
SET NOCOUNT ON;
UPDATE Person
SET
fname=ISNULL(@fname,fname),
minitial=ISNULL(@minitial,minitial),
lname=ISNULL(@lname, lname)
WHERE id=@id
END