特別郁悶2005里寫的存儲過程怎么解決字符串長度問題?
存儲過程內容
ALTER PROCEDURE [dbo].[GetPageDataOutRowPageCount](@PageIndex int = 1,--當前頁數 @PageSize int = 4,--每頁大小@NowPage int = 1,--根據傳入欄目id要加載當前頁的數據@RowCount int output,--總行數(傳出參數)@PageCount int output--總頁數(傳出參數))ASbegin DECLARE @sql NVARCHAR(225),@sqlCount NVARCHAR(225) select @RowCount =COUNT(FCaseChildId),@PageCount=CEILING((COUNT(FCaseChildId)+0.0)/@PageSize) FROM TCaseContent where FParentsId=@NowPage SET @sql='SELECT TOP'+str(@PageSize)+' * FROM TCaseContent where FParentsId='+str(@NowPage)+'and FCaseChildId not in(select top '+str((@PageIndex-1)*@PageSize) +' FCaseChildId from TCaseContent where FParentsId='+str(@NowPage)+' order by FImageUpTime desc ) order by FImageUpTime desc' print @sql EXEC(@sql)end
?
編譯器生成的
SELECT TOP ? ? ? ? 2 * FROM TCaseContent where FParentsId= ? ? ? ? 3and FCaseChildId not in(select top ? ? ? ? ?2 FCaseChildId from TCaseContent where FParentsId= ? ? ? ? 3 order by FImageUpTime desc ) order by FImageUpTime d
?
這一看最后的desc就沒了 ?但是在存儲過程里去掉幾個空格 ?語句能正確執行 ?
?那么像SELECT TOP ? ? ? ? 2 這里生成的空格明顯多余這可以用LTRIM去掉 長度限制怎么解決?
謝謝?
2005mssqlserver存儲過程
慕妹3242003
2018-12-07 08:23:48