SQL存储过程


代码

ALTER procedure [dbo].[ProReviewScreenshot]
(@Num 
int =3,
 @Category varchar(
20)
)
as
declare @sql varchar(
300)
set @sql='select top '+str(@Num)+ ' Review.Id, Review.AppId,Title,[Content],PublishTime,ScreenshotUrl
from Review left join Screenshot on Review.AppId=Screenshot.AppId
where Screenshot.No=0 and Review.IsSave=1 and Review.Category='''+@Category+''' order by Review.Id desc'
print(@sql)
exec(@sql)
注意存储过程字符串传参,上面@Category当作字符串参数传进去的时候,要注意单引号的匹配问题。
'''+@Category+'''
  左边第一个是与前面匹配构成封闭的,右边第三个与后面的单引号构成封闭的
  左边第三个和右边第一个表示参数Category
  左边第二个和右边第二个表示Category是字符串的形式传进去
  
原文地址:https://www.cnblogs.com/hubcarl/p/1691988.html