Я ищу оператор SQL или хранимую процедуру, чтобы сбросить значения для подмножества столбцов в строке к их значениям по умолчанию (где это определено) или к нулю. В строке есть другие столбцы, которые я не хочу сбрасывать, иначе я мог бы просто удалить строку и создать новую, которая будет инициализироваться с различными значениями по умолчанию ... это эффект, который я хочу, но только для конкретное подмножество столбцов.
Концептуально, я ищу
UPDATE eirProj
SET <all columns named like 'paf%'> TO THEIR DEFAULT OR NULL
WHERE prjId=@prjId
или хотя бы
UPDATE eirProj
SET pafAuth=<pafAuth default or NULL>, pafComp=<pafComp default or NULL>, paf...
WHERE prjId=@prjId
Я пытаюсь избежать жесткого кодирования значений по умолчанию в двух местах (определение таблицы и этот код сброса). В идеале, но менее критично, я бы хотел избежать жесткого кодирования имен столбцов, чтобы оно все равно работало, если подмножество изменяется путем добавления, удаления или переименования столбцов.
Я работаю в SQL Server, и решения, специфичные для T-SQL, в порядке, если это единственный способ сделать это.