sql查询语句中遇到问题

450阅读 0评论2013-02-25 lwyyuan
分类:C#/.net

在sql 查询语句中遇到一个问题,记录一下

declare @sql varchar(200)
declare @str Nvarchar(2000)
set @str=' 1=1 and  OperatorName like ''%李%'' and o.RoleID=3  order by OperatorID'
set @sql='select OperatorID,OperatorName,OperatorPwd,o.RoleID,r.RoleName,o.memo from tb_operator o left join tb_role r on o.RoleID = r.RoleID 
where '+@str
exec(@sql)
运行后提示如下错误:

消息 102,级别 15,状态 1,第 2 行
'by' 附近有语法错误。

当去掉 order by OperatorID 后能够正常查询,为什么?为什么?


直接执行该sql 语句时可以的,这是为什么,为什么呢?记录一下

上一篇:ASP.NET中导出按钮的方法
下一篇:存储过程中,根据条件动态查询数据