Вот мой код:
USE [xxx]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[problemParam]
@StartDate INT = CONVERT(INT,(CONVERT(CHAR(8),GETDATE()-130,112))),
@EndDate INT = NULL
AS
BEGIN
SSMS
не слишком доволен значением по умолчанию, которое я использовал - в ОПРЕДЕЛЕНИЕ MSDN ЗДЕСЬ он говорит, что значение по умолчанию должно быть константой, а не переменной.
Является ли CONVERT(INT,(CONVERT(CHAR(8),GETDATE()-130,112)))
переменной или константой? Это не переменная традиционным образом, я думаю о переменной, но опять же она не такая константа, как '03 jan 2013'
.
Как мне обойти это? Переместить CONVERT(INT,(CONVERT(CHAR(8),GETDATE()-130,112)))
клиенту, который вызывает хранимую процедуру?
ИЗМЕНИТЬ
Возможный дубликат, поскольку я только что заметил этот SO POST