问题
In my stored procedure, when a long word is passed, server shows error, with part of the word.
I am not sure what is happening .. the word seems to break, but I have given a big value for that variable
My procedure:
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[SP_BuyOnlineSearchNew]-- '1','BMW X6 IN GOOD CONDITION FOR SALE','0','0'
@CategoryID varchar(20),
@SearchString varchar(max),
@RecentAd int,
@RowsPerPage INT,
@PageNumber INT,
@pricefrom INT,
@priceto INT,
@categories Varchar(2000),
@advancesearch varchar(2000),
@features varchar(2000),
@technicalfeatures varchar(2000),
@CompanyID varchar(20)
AS
BEGIN
SET NOCOUNT ON;
declare @OffetCount as int = (@PageNumber-1)*4
Select TotalCount = COUNT(CM.BuyOnlineID) OVER(),
CM.BuyOnlineID,cm.OfferPrice,cm.[Description], CM.Title,CONVERT(VARCHAR, [CM].[DatePosted],106) AS 'DatePosted',
CM.Price,
CM.isActive,
CM.GoogleLocation,
CM.IsImageVerified,
Row_Number() Over ( Order By CM.BuyOnlineID desc ) As Rownumber,
CM.AreaID,
(select top 1 image from [tblBuyOnlineImages] where BuyOnlineID=CM.BuyOnlineID) As imagepath,
(select count(*) from [tblBuyOnlineImages] where BuyOnlineID=CM.BuyOnlineID) As imagecount,
CM.categorytreename
FROM [dbo].[tblBuyOnlineMaster] AS CM
WHERE
(CONTAINS(CM.CategoryTreename, @categories))
order by CM.BuyOnlineID OFFSET @OffetCount ROWS FETCH NEXT 4 ROWS ONLY
SET NOCOUNT OFF
END
来源:https://stackoverflow.com/questions/38763152/sql-server-full-text-search-error