create Proc QUERY_BY_ACCOUNT @szUserName varchar(32), @nPage int AS BEGIN DECLARE @nRecordCount int
DECLARE @szSQL varchar(1024) SELECT @nRecordCount=Count(*) FROM QiPu WHERE UserName1=@szUserName OR UserName2=@szUserName IF @nPage<2 BEGIN SELECT TOP 20 * FROM QiPu WHERE UserName1=@szUserName OR UserName2=@szUserName ORDER BY LogID RETURN @nRecordCount END SET @nPage=@nPage-1 SET @nPage=@nPage*20 SELECT @nPage --SELECT TOP @nPage @nMaxQiPuID=Max(LogID) FROM QiPu WHERE UserName1=@szUserName OR UserName2=@szUserName SET @szSQL='DECLARE @nMaxID int SELECT @nMaxID=Max(LogID) FROM (SELECT TOP '+LTRIM(STR(@nPage))+' LogID FROM QiPu WHERE UserName1='''+@szUserName+''''+' OR UserName2='''+@szUserName+''')A'+ ' SELECT top 20 * FROM QiPu WHERE (UserName1='''+@szUserName+''' OR UserName2='''+@szUserName+''')'+'and (LogID>@nMaxID)aaa122222d' --EXEC (@szSQL) select @szSQL RETURN @nRecordCount END
@szUserName varchar(32),
@nPage int
AS
BEGIN
DECLARE @nRecordCount int
DECLARE @szSQL varchar(1024) SELECT @nRecordCount=Count(*) FROM QiPu WHERE UserName1=@szUserName OR UserName2=@szUserName IF @nPage<2
BEGIN
SELECT TOP 20 * FROM QiPu WHERE UserName1=@szUserName OR UserName2=@szUserName ORDER BY LogID
RETURN @nRecordCount
END SET @nPage=@nPage-1
SET @nPage=@nPage*20
SELECT @nPage
--SELECT TOP @nPage @nMaxQiPuID=Max(LogID) FROM QiPu WHERE UserName1=@szUserName OR UserName2=@szUserName
SET @szSQL='DECLARE @nMaxID int
SELECT @nMaxID=Max(LogID) FROM (SELECT TOP '+LTRIM(STR(@nPage))+' LogID FROM QiPu WHERE UserName1='''+@szUserName+''''+' OR UserName2='''+@szUserName+''')A'+
' SELECT top 20 * FROM QiPu WHERE (UserName1='''+@szUserName+''' OR UserName2='''+@szUserName+''')'+'and (LogID>@nMaxID)aaa122222d' --EXEC (@szSQL)
select @szSQL RETURN @nRecordCount
END
改下設置
SQL Query Analyzer---Tools---Options---Results:
修改Maximum characters per column: 256(默認)->1000(or 2000^_^)