欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

where后头加exec('')

更新时间: 2014-01-05 02:18:21 责任编辑: Author_N1

 

where后面加EXEC('')
我目的很简单,就是写了一个存储过程,

CREATE Procedure [dbo].[P_Report_System]
(
 @where nvarchar(500)
)
select 
。。。。。。。
from 表
where 1=1 exec(@where)

EXEC P_Report_System ' and ecoa.codename = ''C'' '




(8 行受影响)
消息 156,级别 15,状态 1,第 1 行
关键字 'and' 附近有语法错误。

这样总是不行,求了解的大哥大姐们帮帮我,谢谢啊!


--参考方法--
改成这样试试:


CREATE Procedure [dbo].[P_Report_System]
(
 @where nvarchar(500)
)

declare @sql nvarchar(4000)

set @sql = 'select * from 表 where 1=1 '+@where

exec(@sql)
go

EXEC P_Report_System ' and ecoa.codename = ''C'' '


--参考方法--
create Procedure [dbo].[P_Report_System]
(
 @where nvarchar(500)
)
as
DECLARE @sql nvarchar(max)
SET @sql='select *
from sys.sysprocesses
where 1=1 '+@where
EXEC(@sql)
 
EXEC P_Report_System ' and ecoa.codename = ''C'' '
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:18:21
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/8277/
本文WWW.DOC100.NET DOC100.NET版权所有。