将dnt_getpostlist存储过程有原来的
ALTER PROCEDURE [dbo].[dnt_getpostlist]
@tid int,
@pagesize int,
@pageindex int,
@posttablename varchar(20)
AS
DECLARE @pagetop int
SET @pagetop = (@pageindex-1)*@pagesize
IF @pageindex = 1
EXEC('SELECT TOP ' + @pagesize + '
[' + @posttablename + '].[pid],
[' + @posttablename + '].[fid],
[' + @posttablename + '].[title],
[' + @posttablename + '].[layer],
[' + @posttablename + '].[message],
[' + @posttablename + '].[ip],
[' + @posttablename + '].[lastedit],
[' + @posttablename + '].[postdatetime],
[' + @posttablename + '].[attachment],
[' + @posttablename + '].[poster],
[' + @posttablename + '].[posterid],
[' + @posttablename + '].[invisible],
[' + @posttablename + '].[usesig],
[' + @posttablename + '].[htmlon],
[' + @posttablename + '].[smileyoff],
[' + @posttablename + '].[parseurloff],
[' + @posttablename + '].[bbcodeoff],
[' + @posttablename + '].[rate],
[' + @posttablename + '].[ratetimes],
[dnt_users].[nickname],
[dnt_users].[username],
[dnt_users].[groupid],
[dnt_users].[spaceid],
[dnt_users].[gender],
[dnt_users].[bday],
[dnt_users].[email],
[dnt_users].[showemail],
[dnt_users].[digestposts],
[dnt_users].[credits],
[dnt_users].[extcredits1],
[dnt_users].[extcredits2],
[dnt_users].[extcredits3],
[dnt_users].[extcredits4],
[dnt_users].[extcredits5],
[dnt_users].[extcredits6],
[dnt_users].[extcredits7],
[dnt_users].[extcredits8],
[dnt_users].[posts],
[dnt_users].[joindate],
[dnt_users].[onlinestate],
[dnt_users].[lastactivity],
[dnt_users].[invisible],
[dnt_userfields].[avatar],
[dnt_userfields].[avatarwidth],
[dnt_userfields].[avatarheight],
[dnt_userfields].[medals],
[dnt_userfields].[sightml] AS signature,
[dnt_userfields].[location],
[dnt_userfields].[customstatus],
[dnt_userfields].[website],
[dnt_userfields].[icq],
[dnt_userfields].[qq],
[dnt_userfields].[msn],
[dnt_userfields].[yahoo],
[dnt_userfields].[skype]
FROM [' + @posttablename + '] LEFT JOIN [dnt_users] ON [dnt_users].[uid]=[' + @posttablename + '].[posterid] LEFT JOIN [dnt_userfields] ON [dnt_userfields].[uid]=[dnt_users].[uid] WHERE [' + @posttablename + '].[tid]=' + @tid + ' AND [' + @posttablename + '].[invisible]<=0 ORDER BY [' + @posttablename + '].[pid]')
ELSE
EXEC('SELECT TOP ' + @pagesize + '
[' + @posttablename + '].[pid],
[' + @posttablename + '].[fid],
[' + @posttablename + '].[title],
[' + @posttablename + '].[layer],
[' + @posttablename + '].[message],
[' + @posttablename + '].[ip],
[' + @posttablename + '].[lastedit],
[' + @posttablename + '].[postdatetime],
[' + @posttablename + '].[attachment],
[' + @posttablename + '].[poster],
[' + @posttablename + '].[posterid],
[' + @posttablename + '].[invisible],
[' + @posttablename + '].[usesig],
[' + @posttablename + '].[htmlon],
[' + @posttablename + '].[smileyoff],
[' + @posttablename + '].[parseurloff],
[' + @posttablename + '].[bbcodeoff],
[' + @posttablename + '].[rate],
[' + @posttablename + '].[ratetimes],
[dnt_users].[nickname],
[dnt_users].[username],
[dnt_users].[groupid],
[dnt_users].[spaceid],
[dnt_users].[gender],
[dnt_users].[bday],
[dnt_users].[email],
[dnt_users].[showemail],
[dnt_users].[digestposts],
[dnt_users].[credits],
[dnt_users].[extcredits1],
[dnt_users].[extcredits2],
[dnt_users].[extcredits3],
[dnt_users].[extcredits4],
[dnt_users].[extcredits5],
[dnt_users].[extcredits6],
[dnt_users].[extcredits7],
[dnt_users].[extcredits8],
[dnt_users].[posts],
[dnt_users].[joindate],
[dnt_users].[onlinestate],
[dnt_users].[lastactivity],
[dnt_users].[invisible] AS [userinvisible],
[dnt_userfields].[avatar],
[dnt_userfields].[avatarwidth],
[dnt_userfields].[avatarheight],
[dnt_userfields].[medals],
[dnt_userfields].[sightml] AS [signature],
[dnt_userfields].[location],
[dnt_userfields].[customstatus],
[dnt_userfields].[website],
[dnt_userfields].[icq],
[dnt_userfields].[qq],
[dnt_userfields].[msn],
[dnt_userfields].[yahoo],
[dnt_userfields].[skype]
FROM [' + @posttablename + '] LEFT JOIN [dnt_users] ON [dnt_users].[uid]=[' + @posttablename + '].[posterid] LEFT JOIN [dnt_userfields] ON [dnt_userfields].[uid]=[dnt_users].[uid] WHERE [' + @posttablename + '].[tid]=' + @tid + ' AND [pid] > (SELECT MAX([pid]) FROM (SELECT TOP ' + @pagetop + ' [' + @posttablename + '].[pid] FROM [' + @posttablename + '] LEFT JOIN [dnt_users] ON [dnt_users].[uid]=[' + @posttablename + '].[posterid] LEFT JOIN [dnt_userfields] ON [dnt_userfields].[uid]=[dnt_users].[uid] WHERE [' + @posttablename + '].[tid]=' + @tid + ' AND [' + @posttablename + '].[invisible]<=0) AS tblTmp) AND [' + @posttablename + '].[invisible]<=0 ORDER BY [' + @posttablename + '].[pid]')
改为
ALTER PROCEDURE [dbo].[dnt_getpostlist]
@tid int,
@pagesize int,
@pageindex int,
@posttablename varchar(20)
AS
DECLARE @pagetop int
SET @pagetop = (@pageindex-1)*@pagesize
IF @pageindex = 1
EXEC('SELECT TOP ' + @pagesize + '
[' + @posttablename + '].[pid],
[' + @posttablename + '].[fid],
[' + @posttablename + '].[title],
[' + @posttablename + '].[layer],
[' + @posttablename + '].[message],
[' + @posttablename + '].[ip],
[' + @posttablename + '].[lastedit],
[' + @posttablename + '].[postdatetime],
[' + @posttablename + '].[attachment],
[' + @posttablename + '].[poster],
[' + @posttablename + '].[posterid],
[' + @posttablename + '].[invisible],
[' + @posttablename + '].[usesig],
[' + @posttablename + '].[htmlon],
[' + @posttablename + '].[smileyoff],
[' + @posttablename + '].[parseurloff],
[' + @posttablename + '].[bbcodeoff],
[' + @posttablename + '].[rate],
[' + @posttablename + '].[ratetimes],
[dnt_users].[nickname],
[dnt_users].[username],
[dnt_users].[groupid],
[dnt_users].[spaceid],
[dnt_users].[gender],
[dnt_users].[bday],
[dnt_users].[email],
[dnt_users].[showemail],
[dnt_users].[digestposts],
[dnt_users].[credits],
[dnt_users].[extcredits1],
[dnt_users].[extcredits2],
[dnt_users].[extcredits3],
[dnt_users].[extcredits4],
[dnt_users].[extcredits5],
[dnt_users].[extcredits6],
[dnt_users].[extcredits7],
[dnt_users].[extcredits8],
[dnt_users].[posts],
[dnt_users].[joindate],
[dnt_users].[onlinestate],
[dnt_users].[lastactivity],
[dnt_users].[invisible],
[dnt_userfields].[avatar],
[dnt_userfields].[avatarwidth],
[dnt_userfields].[avatarheight],
[dnt_userfields].[medals],
[dnt_userfields].[sightml] AS signature,
[dnt_userfields].[location],
[dnt_userfields].[customstatus],
[dnt_userfields].[website],
[dnt_userfields].[icq],
[dnt_userfields].[qq],
[dnt_userfields].[msn],
[dnt_userfields].[yahoo],
[dnt_userfields].[skype]
FROM [' + @posttablename + '] LEFT JOIN [dnt_users] ON [dnt_users].[uid]=[' + @posttablename + '].[posterid] LEFT JOIN [dnt_userfields] ON [dnt_userfields].[uid]=[dnt_users].[uid] WHERE [' + @posttablename + '].[tid]=' + @tid + ' AND [' + @posttablename + '].[invisible]<=0 ORDER BY [' + @posttablename + '].[pid]')
ELSE
EXEC('SELECT TOP ' + @pagesize + '
[' + @posttablename + '].[pid],
[' + @posttablename + '].[fid],
[' + @posttablename + '].[title],
[' + @posttablename + '].[layer],
[' + @posttablename + '].[message],
[' + @posttablename + '].[ip],
[' + @posttablename + '].[lastedit],
[' + @posttablename + '].[postdatetime],
[' + @posttablename + '].[attachment],
[' + @posttablename + '].[poster],
[' + @posttablename + '].[posterid],
[' + @posttablename + '].[invisible],
[' + @posttablename + '].[usesig],
[' + @posttablename + '].[htmlon],
[' + @posttablename + '].[smileyoff],
[' + @posttablename + '].[parseurloff],
[' + @posttablename + '].[bbcodeoff],
[' + @posttablename + '].[rate],
[' + @posttablename + '].[ratetimes],
[dnt_users].[nickname],
[dnt_users].[username],
[dnt_users].[groupid],
[dnt_users].[spaceid],
[dnt_users].[gender],
[dnt_users].[bday],
[dnt_users].[email],
[dnt_users].[showemail],
[dnt_users].[digestposts],
[dnt_users].[credits],
[dnt_users].[extcredits1],
[dnt_users].[extcredits2],
[dnt_users].[extcredits3],
[dnt_users].[extcredits4],
[dnt_users].[extcredits5],
[dnt_users].[extcredits6],
[dnt_users].[extcredits7],
[dnt_users].[extcredits8],
[dnt_users].[posts],
[dnt_users].[joindate],
[dnt_users].[onlinestate],
[dnt_users].[lastactivity],
[dnt_users].[invisible] AS [userinvisible],
[dnt_userfields].[avatar],
[dnt_userfields].[avatarwidth],
[dnt_userfields].[avatarheight],
[dnt_userfields].[medals],
[dnt_userfields].[sightml] AS [signature],
[dnt_userfields].[location],
[dnt_userfields].[customstatus],
[dnt_userfields].[website],
[dnt_userfields].[icq],
[dnt_userfields].[qq],
[dnt_userfields].[msn],
[dnt_userfields].[yahoo],
[dnt_userfields].[skype]
FROM [' + @posttablename + '] LEFT JOIN [dnt_users] ON [dnt_users].[uid]=[' + @posttablename + '].[posterid] LEFT JOIN [dnt_userfields] ON [dnt_userfields].[uid]=[dnt_users].[uid] WHERE [' + @posttablename + '].[tid]=' + @tid + ' AND [pid] > (SELECT MAX([pid]) FROM (SELECT TOP ' + @pagetop + ' [' + @posttablename + '].[pid] FROM [' + @posttablename + '] WHERE [' + @posttablename + '].[tid]=' + @tid + ' AND [' + @posttablename + '].[invisible]<=0 ORDER BY [' + @posttablename + '].[pid]) AS tblTmp) AND [' + @posttablename + '].[invisible]<=0 ORDER BY [' + @posttablename + '].[pid]')

5836

被折叠的 条评论
为什么被折叠?



