我有一个存储过程SP_CHADOTHERREPORTS
从SP_CHADOTHERREPORTS
执行VB.NET
时。我收到这样的错误:
这是我在SP_CHADOTHERREPORTS
中执行VB.NET
的代码:
Dim subreporttype as varchar = "Report1"
Dim DatabaseFINAL as varchar = "TBLREPORT"
Dim acctcode as varchar = "TBLREPORT.acctcode"
Dim varmonth as integer = 1
Dim varyear as integer = 2011
Execute("EXECUTE SP_CHADOTHERREPORTS '" & subreporttype & "','" & DatabaseFINAL & "','" & acctcode & "'," & dt.Rows(ctr).Item("ReporttypeName").ToString & "," & varmonth & ", " & varyear & "")
虽然这是来自SP_CHADOTHERREPORTS
的{{1}}中的代码:
SQL SERVER 2008
答案 0 :(得分:0)
这一行有一个明显的问题:
' WHERE CHADothercharges.acctcode = '''+ @AccountCode +'' +
-------------------------------------------------------^
这没有任何作用。我假设您想要单引号,''''
。
然而,实现此目的的真正方法是使用sp_executesql
并使用参数来查询查询中的所有常量值。您不能将此用于@TableName
,但您可以将其用于WHERE
中的值。