exec AdvanceSearch ' where p.Status = 1 and ( ( p.ProductID like ''%护肤%''
or p.ProductName like ''%护肤%''
or p.ProductWebName like ''%护肤%''
or p.Keywords like ''%护肤%''
or m.BrandName like ''%护肤%''
or c3.C3Name like ''%护肤%'' ) or ( p.ProductID like ''%美白%''
or p.ProductName like ''%美白%''
or p.ProductWebName like ''%美白%''
or p.Keywords like ''%美白%''
or m.BrandName like ''%美白%''
or c3.C3Name like ''%美白%'' )) and 1 = 1 and 1 = 1 and c2.SysNo = 9',' Order by pe.isstockout',12,0
报错
消息 102,级别 15,状态 1,第 26 行
'and' 附近有语法错误。
注:这里的26行就是or c3.C3Name like ''%美白%'' )) and 1 = 1 and 1 = 1 and c2.SysNo =这行
如果把and 1 = 1去掉一个就不会有问题了,或者把这一行前面的空格全部去掉就不会有问题了,去掉之后如下exec AdvanceSearch ' where p.Status = 1 and ( ( p.ProductID like ''%护肤%''
or p.ProductName like ''%护肤%''
or p.ProductWebName like ''%护肤%''
or p.Keywords like ''%护肤%''
or m.BrandName like ''%护肤%''
or c3.C3Name like ''%护肤%'' ) or ( p.ProductID like ''%美白%''
or p.ProductName like ''%美白%''
or p.ProductWebName like ''%美白%''
or p.Keywords like ''%美白%''
or m.BrandName like ''%美白%''
or c3.C3Name like ''%美白%'' )) and 1 = 1 and 1 = 1 and c2.SysNo = 9',' Order by pe.isstockout',12,0
,很是奇怪,
参数是在存储过程里拼接sql语句执行的条件
or p.ProductName like ''%护肤%''
or p.ProductWebName like ''%护肤%''
or p.Keywords like ''%护肤%''
or m.BrandName like ''%护肤%''
or c3.C3Name like ''%护肤%'' ) or ( p.ProductID like ''%美白%''
or p.ProductName like ''%美白%''
or p.ProductWebName like ''%美白%''
or p.Keywords like ''%美白%''
or m.BrandName like ''%美白%''
or c3.C3Name like ''%美白%'' )) and 1 = 1 and 1 = 1 and c2.SysNo = 9',' Order by pe.isstockout',12,0
报错
消息 102,级别 15,状态 1,第 26 行
'and' 附近有语法错误。
注:这里的26行就是or c3.C3Name like ''%美白%'' )) and 1 = 1 and 1 = 1 and c2.SysNo =这行
如果把and 1 = 1去掉一个就不会有问题了,或者把这一行前面的空格全部去掉就不会有问题了,去掉之后如下exec AdvanceSearch ' where p.Status = 1 and ( ( p.ProductID like ''%护肤%''
or p.ProductName like ''%护肤%''
or p.ProductWebName like ''%护肤%''
or p.Keywords like ''%护肤%''
or m.BrandName like ''%护肤%''
or c3.C3Name like ''%护肤%'' ) or ( p.ProductID like ''%美白%''
or p.ProductName like ''%美白%''
or p.ProductWebName like ''%美白%''
or p.Keywords like ''%美白%''
or m.BrandName like ''%美白%''
or c3.C3Name like ''%美白%'' )) and 1 = 1 and 1 = 1 and c2.SysNo = 9',' Order by pe.isstockout',12,0
,很是奇怪,
参数是在存储过程里拼接sql语句执行的条件
' where p.Status = 1 and
(
(
p.ProductID like ''%护肤%''
or p.ProductName like ''%护肤%''
or p.ProductWebName like ''%护肤%''
or p.Keywords like ''%护肤%''
or m.BrandName like ''%护肤%''
or c3.C3Name like ''%护肤%''
) or
(
p.ProductID like ''%美白%''
or p.ProductName like ''%美白%''
or p.ProductWebName like ''%美白%''
or p.Keywords like ''%美白%''
or m.BrandName like ''%美白%''
or c3.C3Name like ''%美白%'' )
)
) --貌似这里少了个 )
and 1 = 1 and 1 = 1 and c2.SysNo = 9 ' ,
' Order by pe.isstockout',
12,
0
' where p.Status = 1 and
(
(
p.ProductID like ''%护肤%''
or p.ProductName like ''%护肤%''
or p.ProductWebName like ''%护肤%''
or p.Keywords like ''%护肤%''
or m.BrandName like ''%护肤%''
or c3.C3Name like ''%护肤%''
) or
(
p.ProductID like ''%美白%''
or p.ProductName like ''%美白%''
or p.ProductWebName like ''%美白%''
or p.Keywords like ''%美白%''
or m.BrandName like ''%美白%''
or c3.C3Name like ''%美白%'' )
)
)
and 1 = 1 and 1 = 1 and c2.SysNo = 9 ' ,
' Order by pe.isstockout',
12,
0
你把版式排得很好,同时也把SQL加长了。
把你的sql先输出,print @sql.
是不是把结尾删除部分?
注意空格,tab也算一个字符的