Я хочу иметь параметр "@myDate" в хранимой процедуре, который по умолчанию равен 2 годам до сегодняшнего дня, если ничего не указано. Я попытался сделать что-то подобное в моем определении процедуры:
CREATE PROCEDURE myProcedure( @param1 int,
@param2 varchar(20),
@param3 int = null,
@myDate datetime = dateadd(year,-2,getDate()) )
Я получаю следующую синтаксическую ошибку:
Incorrect syntax near '('.
Позволяет ли sql server устанавливать динамические выражения в качестве значений параметров по умолчанию? Если нет, как я могу обойти это (кроме неуклюжий IF @myDate is null SET @myDate=...
)?