Вставьте значение по умолчанию, когда параметр имеет значение NULL

У меня есть таблица, которая имеет столбец со значением по умолчанию:

create table t (
    value varchar(50) default ('something')
)

Я использую хранимую процедуру для вставки значений в эту таблицу:

create procedure t_insert (
    @value varchar(50) = null
)
as 
insert into t (value) values (@value)

Вопрос в том, как заставить его использовать значение по умолчанию, когда@value являетсяnull? Я старался:

insert into t (value) values ( isnull(@value, default) )

Это явно не сработало. Также попробовалcase заявление, но это тоже не очень хорошо. Любые другие предложения? Я поступаю об этом неправильно?

Обновление: я пытаюсь сделать этобез того, чтобы:

поддерживатьdefault значение в нескольких местах, ииспользовать несколькоinsert заявления.

Если это невозможно, я думаю, мне придется с этим смириться. Просто кажется, что-то такое должно быть достижимо.

Примечание: моя фактическая таблица содержит более одного столбца. Я просто быстро написал пример.

Ответы на вопрос(16)

Ваш ответ на вопрос