0
我需要一个sqldatasource,其中包含以下sql。asp sqldatasource text
if @filter = 'departments'
begin
SELECT ISNULL(DocTitle,'') as Name, DocNumber as id, DocUrl+DocName AS link,LastModBy,LastModDate, IsLink
FROM cmc.CMC_Docs d
INNER JOIN CMC.CMC_Doc_Locations as l on l.FamilyID = d.FamilyID
INNER JOIN CMC.CMC_DocFamilies df on df.FamilyID = d.FamilyId
WHERE IsEnabled=1
AND ISNULL(DocName,'') <> ''
AND d.FamilyID IN @dep
ORDER by DocTitle
end
其中@dep是一样的东西(2,3)
然而,当我尝试测试查询我得到一个错误说近@dep不正确的语法。
任何想法,我需要在数据源中写入这些以使其工作?
谢谢,
尽可能即时知道这个只能通过从字符串连接的动态SQL查询来实现。或者,有一个可以为你做过滤器的嵌套查询。 – f0x
尝试:SELECT ISNULL(DocTitle,'')as Name,DocNumber as id,DocUrl + DocName AS link,LastModBy,LastModDate,IsLink FROM cmc.CMC_Docs d INNER JOIN CMC.CMC_Doc_Locations as l on l.FamilyID = d。 FAMILYID INNER JOIN上df.FamilyID = d.FamilyId CMC.CMC_DocFamilies DF WHERE的IsEnabled = 1 AND ISNULL(可采用DocName, '')<> '' AND d.FamilyID IN(@dep) ORDER BY DocTitle – sjramsay
如果你正在尝试有一个参数化的子句 - [这篇文章](http://stackoverflow.com/questions/337704/parameterizing-an-sql-in-clause)可能会有所帮助。 – Goose