1
當我運行在SQL Server中下面的T-SQL 2012,它工作正常,但在SQL Server 2008 R2中我得到的錯誤SQL:必須聲明標量變量
必須聲明標量變量「@In」
and
必須聲明標量變量「@out」
代碼:
DECLARE @outIds nvarchar(max);
DECLARE @in TimeLineReportList;
DECLARE @out TimeLineReportList;
DECLARE @startDate datetime;
DECLARE @endDate datetime;
DECLARE @assessmentId int;
SET @startDate ='2013-01-01T00:00:00.000'
SET @endDate ='2013-01-01T00:00:00.000'
SET @assessmentId = 14
SET @outIds ='3,9,10'
INSERT INTO @in
SELECT *
FROM dbo.udf_First_Timeline_Entries_Of_Status(@assessmentId)
INSERT INTO @out
SELECT *
FROM dbo.udf_First_Timeline_Entries_Of_Any_Statuses(@outIds)
SELECT *
FROM dbo.udf_Generic_Timelines(@startDate, @endDate, @in, @out,default)
TimeLineReportList
是,在肯定存在的用戶定義的表型數據庫
編輯我只是剛剛運行以下和兩個返回的結果測試的前兩個疑問:
SELECT * FROM dbo.udf_First_Timeline_Entries_Of_Status(@assessmentId)
SELECT * FROM dbo.udf_First_Timeline_Entries_Of_Any_Statuses(@outIds)
您的數據庫處於80兼容模式?這些UDF是否爲TVF?也是2008年<> 2008 R2。 – 2014-09-10 16:12:44
@AaronBertrand明確2008R2,而不是2008. 2012實例是在90兼容模式,但在2008R2實例在80 – hofnarwillie 2014-09-10 16:17:03
@AaronBertrand哦是的,它是表值函數 – hofnarwillie 2014-09-10 16:17:28