Sql server 执行动态SQL查询

Sql server 执行动态SQL查询,sql-server,Sql Server,我需要在SP中执行类似于bellow的SQL 我找到了一种类似EXEC sp_executesql@Sql的方法。但是我有错误。试试这个 您应该使用Print来调试stations 谢谢但我需要在SP内执行sql,并将结果发送给Asp.Net项目。@请参见Valirathnayake您需要将参数作为输入参数传递给存储过程这里的一点是Ganesh已逃出,如%。请注意,我认为OP的问题中缺少引用。@Ganesh_Devlekar现在可以工作了。谢谢。你会犯什么样的错误?另外:用几句话描述你的任务,这

我需要在SP中执行类似于bellow的SQL

我找到了一种类似EXEC sp_executesql@Sql的方法。但是我有错误。

试试这个

您应该使用Print来调试stations


谢谢但我需要在SP内执行sql,并将结果发送给Asp.Net项目。@请参见Valirathnayake您需要将参数作为输入参数传递给存储过程这里的一点是Ganesh已逃出,如%。请注意,我认为OP的问题中缺少引用。@Ganesh_Devlekar现在可以工作了。谢谢。你会犯什么样的错误?另外:用几句话描述你的任务,这样我们就可以理解你的方法可能会出什么问题。
DECLARE
@varSearchQ VARCHAR(100),
@varFieldName VARCHAR(100),
@varTableName VARCHAR(100),
@Sql VARCHAR(Max)

SET @varSearchQ='000'
SET @varFieldName='varConsoleID'
SET @varTableName='FF.ConsoleDT'

SET @Sql = N'SELECT ' + @varFieldName + ' 
           FROM ' + @varTableName + ' 
           WHERE ' + @varFieldName + ' LIKE %' + @varSearchQ + '%'
Create proc MYPROC
 as
 BEGIN


 DECLARE
    @varSearchQ VARCHAR(100),
    @varFieldName VARCHAR(100),
    @varTableName VARCHAR(100),
    @Sql VARCHAR(Max)

SET @varSearchQ='000'
SET @varFieldName='varConsoleID'
SET @varTableName='FF.ConsoleDT'

SET @Sql = N'SELECT ' + @varFieldName + ' 
           FROM ' + @varTableName + ' 
           WHERE ' + @varFieldName + ' LIKE ''%' + @varSearchQ + '%'''
           print  (@Sql)
           EXEC (@Sql)


 END