我正在尝试通过SSRS将@year
参数传递给查询Progress数据库的SQL Server存储过程。当存储过程在ssrs中运行时,我在@year
值处收到语法错误。
任何人都可以看到我错过了一些非常明显的东西吗?
[stored procedure name]
@year nvarchar(max)
AS
BEGIN
SET NOCOUNT ON;
DECLARE @SQL nvarchar(max)
set @SQL = 'select *
from openquery
("server name",
''select
"PLACE-REF", "ACCOUNT-CODE", "TRANS-YEAR"
from "PLACE"."LOCATION"
where ((LTRIM(RTRIM(("LOCATION"."ACCOUNT-CODE" ))) IN (''''S/RTBQ'''',''''S/VATC'''' )))
and ("LOCATION"."TRANS-YEAR" = ''''' + @year + ''''') '') '
--print @sql
EXEC (@SQL)
END
显然这是代码的片段,但它提供了我参与参数的方式。
感谢。