Изменение
SET u.Reputation = (u.Reputation + @Reputation)
в
SET u.Reputation = COALESCE(u.Reputation,0) + @Reputation
поэтому NULL
с в поле Reputation
перед добавлением @Reputation
.
заменяются на
0
.
Кроме того, вы можете сохранить свой код, если сначала установите для всех значений NULL
значение 0
, а затем заполните поле NOT NULL
с помощью оператора ALTER TABLE . Выполните следующее, один раз:
UPDATE Users
SET Reputation = 0
WHERE Reputation IS NULL ;
ALTER TABLE Users
ALTER COLUMN Reputation NOT NULL DEFAULT 0 ;