Date-Parameter, der nicht in Anführungszeichen im SSMS-generierten Skript enthalten ist

Ich habe diese gespeicherte Prozedur:

.... ALTER PROCEDURE [dbo].[CalenderPreload] @startingSunday date, @numberOfYears int AS BEGIN SET NOCOUNT ON; DECLARE @s DATE = DATEADD(year, @numberOfYears, @startingSunday); ..... 

Und ich versuche es mit dem Menüpunkt Execute Stored Procedure... Kontextmenü auszuführen, wenn du mit der rechten Maustaste auf die Prozedur im object-Explorer in SSMS klickst.

Ich bekomme diesen Fehler:

Operand Typ clash: int ist nicht kompatibel mit date

Dies ist das Skript, das SSMS generiert, wenn ich die Prozedur ausführe:

 EXEC @return_value = [dbo].[CalenderPreload] @startingSunday = 20151227, -- notice no ' ' @numberOfYears = 5 SELECT 'Return Value' = @return_value 

Aus irgendeinem Grund wird mein date nicht in Anführungszeichen verpackt.

E: Anscheinend datetime die Zitate, während das date nicht?

Nach den Plakaten hier kann dies ein Bug sein und seit 2008 wird nicht mehr unterstützt (und ich habe nicht die Möglichkeit zum Upgrade) meine beste Lösung war, ein datetime anstelle von date .