代码
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是字符串的形式传进去